LINQ to SQL关联-"属性没有匹配的类型"

时间:2020-03-05 18:47:59  来源:igfitidea点击:

我试图将给定表的两个字段链接到另一个表中的相同字段。
我之前已经做过这件事,所以这次我无法弄清楚什么地方出了问题。

反正:

Table1
- Id (Primary)
- FK-Table2a (Nullable, foreign key relationship in DB to Table2.Id)
- FK-Table2b (Nullable, foreign key relationship in DB to Table2.Id)

Table2
- Id (Primary)

该关联适用于FK-Table2a,但不适用于FK-Table2b。
实际上,当我加载到LINQ to SQL中时,它显示Table2.Id与Table1.Id相关联。
如果我尝试更改此设置,或者将FK-Table2b的新关联添加到Table2.Id,则其内容为:"属性没有匹配的类型"。

这在其他项目中也可行,也许我应该只复制.dbml吗?

有任何想法吗?

解决方案

回答

不知道原因,但我只是从头开始重建了.dbml并对其进行了修复。
哦,有个"刷新"功能...

回答

我有同样的问题。当我尝试链接不同类型的字段时,或者尝试将表拖放到.dbml空间时出现此错误,但是.dbml已经包含具有不同类型链接字段的链接表。

回答

当我尝试创建一对一的关系(其中关系的一侧是可为空的(实际上是一对一/一))时,我看到了这个问题。 LINQ-to-SQL似乎不支持此功能,因此看来我们被迫建立了复数关系和一个包含零个或者一个项目的集合。恼人的。