1
我正處於學習階段。我想知道的是ASP.NET MVC-5框架在Code First約定中使用實體框架可以爲空的默認爲空的外鍵?我試圖創建外鍵關係,而外鍵列原來是空的。我有一個概念,如果我把一個列標記爲外鍵,它應該被實體框架標記爲NOT NULLABLE。在ASP.Net MVC 5應用程序中默認可以使用外鍵可空
下面是例子:一個「標準」可以有許多「孩子」:
一對多。
public class Children
{
public int Id { get; set; }
public string Name { get; set; }
public int StandardId { get; set; }
[ForeignKey("StandardId")]
public virtual Standard Standard { get; set; }
}
public class Standard
{
public Standard()
{
Children = new List<Children>();
}
public int Id { get; set; }
public string StandardName { get; set; }
public virtual ICollection<Children> Children { get; set; }
}
只需上面的配置,外鍵「StandardId」中走出來在數據庫Nullable
。我只是想知道這是預期的行爲?外鍵是否被DEFAULT設置爲NULLABLE,或者我沒有正確連接外鍵屬性?
好了,什麼是acheive非空的FK的最佳途徑。如果我在FK屬性上裝飾了「必需」屬性,或者我應該按照您回答的方法。哪一個是正確的,哪一個我會一直遵循? – Unbreakable
無論你堅持流利的配置還是屬性配置,這都是一個問題。我個人更喜歡流利的「方式」 – Piotr
這清除了我的懷疑。非常感謝你。 – Unbreakable