我有ComplexType
必须实施IList<T>
(background info here)。
不幸的是,Entity Framework抱怨该接口所需的索引属性
[NotMapped]
public T this[int index]
(注意它用NotMapped
数据注释装饰。)
我在运行时使用内部异常
获得DbUpdateException
不支持索引属性。
如果我注释掉该类实现IList<T>
并注释掉索引属性,则该类的实例将按预期保持不变。
是否有某种方法可以让复杂类型实现IList<T>
由实体框架代码优先保留?
答案 0 :(得分:1)
实体框架不支持开放的通用实体,我相信复杂类型也是如此。唯一的方法是定义从您在链接问题中显示的封闭泛型类型派生的特定类型。
还有一些众所周知的错误,映射类不能有索引器。