[英]Entity Framework navigation with shared object table
我有项目,任务和工作对象。 我有一个可以链接到其中任何一个的对象标签。 这些对象中的任何一个都可以具有与其关联的多个标签。 标签对象具有TagId,TypeId,RelationId。
RelationId是指向链接对象的对象,类型指示要链接到的类型。 如何在每个对象的导航属性中执行此操作,以免出现错误的标记对象。 我知道我可以使用Linq来执行Where(ProjectId == RelationId && TypeId == 1)
,但这仅在我编写查询且不允许导航属性的情况下有效。
您的实体结构应如下所示:
class Projects
{
public int ProjectId { get; set; }
public virtual ICollection<Tag> Tags { get; set; }
}
class Tasks
{
public int TaskId { get; set; }
public virtual ICollection<Tag> Tags { get; set; }
}
class Tag
{
public int TagId { get; set; }
public int TypeId { get; set; }
public int RelationId { get; set; }
public virtual Projects Project { get; set; }
public virtual Tasks Task { get; set; }
}
这在实体框架https://msdn.microsoft.com/zh-cn/data/jj713564.aspx中称为独立关联
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.