Entity framework 具有实体框架4.0的复合数据库密钥
我们公司对大型数据库的重新设计广泛使用了数据库上的复合主键 忘记性能影响,在EntityFramework4.0中使用此db时是否会造成任何困难?数据库结构不太可能改变,我不想进行“哲学”辩论,但实际影响是什么Entity framework 具有实体框架4.0的复合数据库密钥,entity-framework,primary-key,composite-key,Entity Framework,Primary Key,Composite Key,我们公司对大型数据库的重新设计广泛使用了数据库上的复合主键 忘记性能影响,在EntityFramework4.0中使用此db时是否会造成任何困难?数据库结构不太可能改变,我不想进行“哲学”辩论,但实际影响是什么 据他所说,“复合键使得任何类型的对象/关系映射和持久性都变得更加困难。”但他并没有真正说明原因。这与EntityFramework4.0处理键的方式有关吗?不,EF4支持复合键 问题是具有代理键和复合键的表。您只能在每个模型上设置一个键;该键可以有多个字段,但从设计器的角度来看,只能有一
据他所说,“复合键使得任何类型的对象/关系映射和持久性都变得更加困难。”但他并没有真正说明原因。这与EntityFramework4.0处理键的方式有关吗?不,EF4支持复合键 问题是具有代理键和复合键的表。您只能在每个模型上设置一个键;该键可以有多个字段,但从设计器的角度来看,只能有一个字段。不确定是否手动编辑xml或仅代码映射
如果在同一个表上需要复合键和代理键,则可以将字段设置为标识而不是键。ObjectContext或ObjectStateTracker不会使用标识(Id)字段,但它会增加,并且可以很好地查询。我对EF4和复合键有问题。它不支持将列用作联接表中多个键的组件 有关更多详细信息,请参见我的上一个问题。关键是,当您有一个连接表(描述多个关系),其中两个关系都使用一个公共键时,您将得到如下错误 错误3021:映射中存在问题 片段…:以下各项 表PageView中的列映射到 多个概念侧属性: 页面视图。版本已映射到 (PageView_Association.View.Version, PageView_Association.Page.Version) 唯一的解决办法是复制这一专栏,这完全违背了它在那里的目的 祝你好运