簡體   English   中英

實體框架流利的映射外鍵

[英]Entity Framework fluent mapping foreign key

我有這些實體類(簡化):

public class MyClass 
{
      int Id {get;set;}
      int MyObjectId {get;set;}
      MyObject MyObject {get;set;}
}

public class MyObject 
{
      int Id {get;set;}
      string Name {get;set;}
      ICollection<MyClass> MyClass {get;set;}
}

流利的映射

HasRequired(x => x.MyObject).WithMany(x => x.MyClass)
    .HasForeignKey(x => x.MyObjectId).WillCascadeOnDelete(false);

我剛剛開始學習EF,所以我有兩個問題

是否可以避免使用MyObjectId告訴EF如何映射事物,還是應該擺脫MyClassMyObject類並改用MyObjectId ,並且每當我需要表中的嵌套數據時,都應該通過MyObjectId將其拉出嗎? 到目前為止,同時擁有兩者並不適合。

流利的API需要我有參考MyClassMyObject只是指定WithMany財產,我其實並不需要訪問MyClassMyObject -任何指導?

我想我習慣了nHibernate ...

請參閱此處的文檔:

實體框架流利的映射外鍵

請參閱“重命名模型中未定義的外鍵”部分

順便說一句,很久以前,我嘗試僅通過導航屬性(無FK)定義模型。 我不記得是什么原因放棄了,但是我遇到了問題,最終把FK放到了我所有的實體上。 那只是我的經驗,其他人可能會告訴您不同的看法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM