Unk*_*own 7 entity-framework-4
我有一个实体用户.每个用户应该有很多朋友和老师.使用EF Code First,我对如何实现我想要的东西感到有点困惑.我看到了自我引用的例子,但没有多对多的例子.例如:
public class Employee
{
#region Properties
public int EmployeeID { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public int? ManagerID { get; set; }
public Employee Manager { get; set; }
#endregion
}
Run Code Online (Sandbox Code Playgroud)
和modelBuilder:
modelBuilder.Entity<Employee>().
HasOptional(e => e.Manager).
WithMany().
HasForeignKey(m => m.ManagerID);
Run Code Online (Sandbox Code Playgroud)
如何在我的情况下创建一个具有自我引用的实体,其中有朋友(如果是b的朋友,这意味着b是a的朋友)和教师(如果是b的老师,b是a的学生)?
对不起,如果已经存在类似的线程.任何帮助是极大的赞赏.
Unk*_*own 10
好吧,因为很多人回答了这个问题;),我搜索了一下,我找到了解决方案.该实体看起来像:
public class User
{
public int ID { get; set; }
public string UserName { get; set; }
public virtual ICollection<User> Friends { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
modelBuilder:
modelBuilder.Entity<User>()
.HasMany(x => x.Friends)
.WithMany();
Run Code Online (Sandbox Code Playgroud)
最后我制作了帮助方法BeFriend和BecomeTeacherStudent,这确保当你成为某人的朋友时,他会成为你的朋友(以及师生的各自的事情).
| 归档时间: |
|
| 查看次数: |
3481 次 |
| 最近记录: |