Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/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
Entity framework 在实体框架中,如何在不使用所有实体键的情况下建立关联?_Entity Framework_Ado.net - Fatal编程技术网

Entity framework 在实体框架中,如何在不使用所有实体键的情况下建立关联?

Entity framework 在实体框架中,如何在不使用所有实体键的情况下建立关联?,entity-framework,ado.net,Entity Framework,Ado.net,我对EF越来越失望 我有一个名为ExtendedField的表,其中包含: 记录 DocRef DocType 名称 记录是主键 DocRef和DocType是外键,用于标识它们属于哪个票证 Name是“definition”表用来定义字段实际是什么的键 所以基本上我需要两个关联: 票证和扩展字段之间的一个 在ExtendedField.DocRef=ticket.record上 和 ExtendedField.docType=HeaderDocType 定义之间的一个 ExtendedFiel

我对EF越来越失望

我有一个名为ExtendedField的表,其中包含:

记录
DocRef DocType
名称

记录是主键
DocRef和DocType是外键,用于标识它们属于哪个票证
Name是“definition”表用来定义字段实际是什么的键

所以基本上我需要两个关联:

票证和扩展字段之间的一个 在ExtendedField.DocRef=ticket.record上 和 ExtendedField.docType=HeaderDocType

定义之间的一个 ExtendedField.Name=Definition.FieldName

然后我仍然需要记录作为主键,这样我就可以直接访问字段

据我所知,这在实体框架中是不可能做到的。对于每个关联,所有键都需要映射在一起,而我需要两个键来表示一个关联,一个键表示另一个关联,实际的主键不会在任何关联中使用

您似乎也无法在非实体键的字段之间定义关联


那么有没有办法做到这一点?我错过什么了吗?

是v1,兄弟。我自己在EF中映射关键约束时遇到了一些大麻烦。我听说v2会有更好的表现。

接下来几天v2有没有可能会出现?如果没有,我可能不得不回到Linq2Sql,因为我需要在接下来的两周内完成这项工作(根据我的经验,我现在只想回到Linq to SQL。这是一项伟大的技术,在当前的EF热议中被忽略了……更不用说它在这一点上更易于使用和更有用了(在我看来)。例如,我不能使用不返回值或标量值的存储过程。我必须返回一个EF对象。我只是认为它还没有准备好进行生产。有传言说EF v2将推出.Net 4.0。祝您好运,编码愉快!:)