我试图创建2个linq到sql实体之间的关联,比如实体A和实体B. A使用非列属性属性(名为BaseDocumentType)以及“ThisKey”的关联中的列属性以及“OtherKey”的2个列属性。以下是我的协会属性定义的示例... [System.Data.Linq.Mapping.AssociationAttribute(... ThisKey = “BaseDocumentType,列2”,OtherKey = “column1的,列2”)]Linq to Sql使用关联属性中的非列属性
当我运行它时,出现以下错误... “类型'Library'的数据成员'System.String BaseDocumentType'不是类型'A'的映射的一部分。成员是继承层次?”
如何使用非列属性属性定义关系,或者如何使其工作?
谢谢。
这里的问题是您的继承模型不能很好地与LINQ to SQL一起工作。如果您可以添加关于使用继承模型的表和实体的信息,我们可能会提供一些其他选择。最初,我会说你的BaseDocumentType可能会更好,而不是基类,因为我怀疑你的EntityA和EntityB是BaseDocumentType的子类型,而是实现一个IDocumentType接口。 EF确实支持你想要的映射,但是性能可能会低于预期。 –