我一直在尝试在EF 4.1中创建模型来表示一个数据库模式,其中一个表和一个列保存来自另外两个表的外键,但是对于注释和流畅的API几乎没有运气。此处显示了一个示例模型:
public class User
{
...
public virtual ExtendedAttribute ExtendedAttributes { get; set; }
}
public class Account
{
...
public virtual ExtendedAttribute ExtendedAttributes { get; set; }
}
public class ExtendedAttribute
{
public Guid Id {get; set;}
public Guid ItemId {get; set;} // both Account.Id and User.Id stored here
public string Value { get; set; }
}
目前,这些实体的配置对于User和Account modelBuilders看起来都是这样的:
this.HasOptional(u => u.ExtendedAttributes).WithRequired();
有关如何实现的任何想法?非常感谢。
答案 0 :(得分:0)
对于数据库本身来说甚至是不可能的,EF也不会为此提供任何抽象。每个实体必须具有单独的列和导航属性。