为了账号安全,请及时绑定邮箱和手机立即绑定

EFCodeFirst:我应该初始化导航属性吗?

EFCodeFirst:我应该初始化导航属性吗?

C#
慕运维8079593 2019-07-09 14:29:58
EFCodeFirst:我应该初始化导航属性吗?我看过一些书编程实体框架代码首先Julia Lerman)在没有初始化导航属性的情况下定义它们的域类(Poco),如下所示:public class User{     public int Id { get; set; }     public string UserName { get; set; }     public virtual ICollection<Address> Address { get; set; }     public virtual License License { get; set; }}其他一些书籍或工具(例如实体框架电动工具)当生成pocos初始化类的导航属性时,如下所示:public class User{     public User()     {         this.Addresses = new IList<Address>();         this.License = new License();     }     public int Id { get; set; }     public string UserName { get; set; }     public virtual ICollection<Address> Addresses { get; set; }     public virtual License License { get; set; }}问题1:哪个更好?为什么?赞成与反对?编辑:public class License{     public License()     {         this.User = new User();     }     public int Id { get; set; }     public string Key { get; set; }     public DateTime Expirtion { get; set; }     public virtual User User { get; set; }}问题2:在第二种方法中,如果“License”类也引用了“user”类,则会出现堆栈溢出。这意味着我们应该有单向的参考。(?)我们应该如何决定应该删除哪个导航属性?
查看完整描述

3 回答

  • 3 回答
  • 0 关注
  • 528 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信