【发布时间】:2016-09-21 05:42:31
【问题描述】:
我有两个表 T_users 和 M_Album 如下:
T_Users
T_专辑
M_Album中的2个外键字段UserID、ParentID和T_Users中都有主键字段ID。如何在代码优先的方法中编写实体代码?
我创造了
M_Album = new HashSet<M_Album>();
和
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
public virtual ICollection<M_Album> M_Album { get; set; }
在 T_Users.And 中
M_Album 中的public virtual T_Users T_Users { get; set; }
同时创建:
modelBuilder.Entity<T_Users>()
.HasMany(e => e.M_Album)
.WithOptional(e => e.T_Users)
.HasForeignKey(e => e.UserID);
modelBuilder.Entity<T_Users>()
.HasMany(e => e.M_Album)
.WithOptional(e => e.T_Users)
.HasForeignKey(e => e.ParentID);
这是正常工作还是其他方法?
【问题讨论】:
-
M_Album的UserID和ParentID,都需要指向T_Users的ID吗?
-
@sachin 如何指向 T_Users 的 ID?如果可能请分享代码
标签: c# asp.net-mvc-4 ef-code-first