我有这个实体:
public class Content
{
public int Id { get; set; }
public string Title { get; set; }
public string Test { get; set; }
public DateTime Date { get; set; }
}
我希望与代码优先创建自己的多对多关系,如下图所示:
我该怎么做?
答案 0 :(得分:2)
我认为您需要以下内容:
public class Content
{
public int Id { get; set; }
public ICollection<ContentLink> OtherContents { get; set; }
}
public class ContentLink
{
public int Id { get; set; }
public Content Lhs{ get; set; }
public Content Rhs{ get; set; }
//other stuff
}
modelBuilder.Entity<Content>().
HasMany(c => c.OtherContents).WithRequired(c=>c.Lhs);
modelBuilder.Entity<ContentLink>().
HasRequired(c => c.Rhs).WithMany();
注意:以上内容仅允许您遍历此实体链接的资源,而不是其他链接到您的实体
点击此处关于导航属性的帖子了解详情:http://blog.staticvoid.co.nz/2012/7/17/entity_framework-navigation_property_basics_with_code_first