Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 4.0 在EDM模型中创建关于唯一键的关联_C# 4.0_Entity Framework 4_Unique Constraint - Fatal编程技术网

C# 4.0 在EDM模型中创建关于唯一键的关联

C# 4.0 在EDM模型中创建关于唯一键的关联,c#-4.0,entity-framework-4,unique-constraint,C# 4.0,Entity Framework 4,Unique Constraint,我正在开发一个基于遗留数据库的新应用程序。旧的遗留数据库不使用引用完整性,首先我们尝试不更改现有模式。我仍然希望能够在EF生成的POCO类中使用导航属性 但是,旧的数据模型在子-父关系方面存在一个大问题:子表中的列通过父表的uniqe键引用父表,而不是通过父表的主键。还可能产生这样的关联吗 我试图将父表中的唯一键标记为“实体键”,但我仍然需要为父表的主键提供映射,我无法提供该映射,因为没有可用的映射,该主键只是一个伪“计数器”。如果我没有为主键提供映射,那么 “错误111:主体角色XXX引用的属

我正在开发一个基于遗留数据库的新应用程序。旧的遗留数据库不使用引用完整性,首先我们尝试不更改现有模式。我仍然希望能够在EF生成的POCO类中使用导航属性

但是,旧的数据模型在子-父关系方面存在一个大问题:子表中的列通过父表的uniqe键引用父表,而不是通过父表的主键。还可能产生这样的关联吗

我试图将父表中的唯一键标记为“实体键”,但我仍然需要为父表的主键提供映射,我无法提供该映射,因为没有可用的映射,该主键只是一个伪“计数器”。如果我没有为主键提供映射,那么
“错误111:主体角色XXX引用的属性必须与主体角色在关系ZZZ的关系约束中引用的EntityType YYY的键完全相同。请确保在主体角色中指定了所有键属性”

无EF完全不支持唯一键。这是下一个主要版本。

我的解决方法是:我在子表中创建了一个新列,其中包含对父表主键的引用。现在,我在子表中有一个双重性-从父表引用uniqe键,从父表引用主键。我知道这并不好,但我必须接受它,因为它可能是除了自己生成域对象之外的唯一解决方案。我希望支持唯一密钥的新EF将很快推出,这样我就可以消除这种双重性。再次感谢你,拉迪斯拉夫。