【发布时间】:2012-03-03 17:05:49
【问题描述】:
我有一个 Content 类,它应该能够有一个 parentId 用于继承,但我也希望它有一个与此继承树无关的子内容列表。
我基本上想要一个作为 ChildContentRelationship 的链接表,其中包含用于 parentContent 和 childContent 的 Id,并且 Content 类将有一个 ChildContentRelationship 列表。
这导致了很多错误。
这是我想做的事情
public class Content
{
public int Id { get; set; }
public int? ParentContentId { get; set; }
public virtual Content ParentContent { get; set; }
public string Name { get; set; }
public int ContentTypeId { get; set; }
public virtual ContentType ContentType { get; set; }
public virtual ICollection<Property> Properties { get; set; }
public virtual ICollection<ChildContentRelationship> ChildContent { get; set; }
}
如何在 EF 中进行设置?
【问题讨论】:
-
您使用的是哪个版本的实体框架以及哪种方法(db-first、model-first、code-first)?为什么你想要一个链接表?你不是有一个一对多的关系,一个父母和许多孩子吗?
-
EF 4.1 +,代码优先。这是因为这个 ParentContentId。请参阅我希望内容能够让父级从父级内容类型架构继承任何属性。但我也希望一段内容能够引用不在此树层次结构中的其他内容。这样我就可以渲染子内容,有点像控件。我可以将它命名为控件,并让控件具有我想的 ContentId?
-
“Code First”已经在标题中了,我傻了,我没注意到,抱歉。
标签: sql entity-framework entity-framework-4.1 ef-code-first entity-relationship