1

当从 Entity framework 3.5 检索到的数据且被查询的表具有外键时,我在将数据绑定到网格视图时遇到了问题。

通常当我使用 LINQTOSQL 将表绑定到 datagridview 并且表有外键时,去编辑网格视图的列并将列类型设置为组合框,然后给它一个单独的数据源并将 DisplayMember 设置为相同值作为外键的字段。这用于显示外键引用的表的值。

当我开始使用 EF 时,我注意到当您在 EDM 中包含一个具有外键的表并且您还在 EDM 中包含外键指向的表时,Visual Studio 会自动从实体中删除外键并创建一个两个实体之间的关系。

这给我带来了一个问题,因为我无法弄清楚如何在 datagridview 中显示外键的值,而无需遍历每条记录并“手动”设置组合框选定值的值......

任何人都知道如何做到这一点;我尝试在互联网上搜索几个小时,但没有运气......非常感谢任何帮助。

谢谢,

4

1 回答 1

1

我设法找到了一种方法来做到这一点。

我首先删除了 EDM 中表(实体)之间创建的所有关联。

在此之后,我在实体中创建了与外键同名的标量属性,然后从 EDM 中的映射详细信息将外键字段映射到创建的新标量属性。

这对我有用,希望这可以帮助别人。

谢谢

于 2013-03-20T12:36:34.557 回答