2

我有一些观点想在我的 Linq2Sql DBML 文件中关联起来。

我右键单击,选择“添加关联”并手动创建从孩子到父母的关联,例如:

Customer.TypeId -> CustomerTypes.Id

但我不能在我的代码中这样做:

from c in Customers select c.Type.Name

有什么线索吗?如果数据库中存在关系,它们不存在也不能存在,那么我将能够做到这一点。

4

2 回答 2

2

这很奇怪;我记得把我想出的答案写在这里!

基本上问题在于,因为我查看的是视图而不是表,并试图在 DBML 文件中将它们关联在一起,所以它们显然没有主键。一旦我告诉 Linq2Sql 哪些列是主键,那真是太高兴了!

于 2009-08-17T07:34:28.360 回答
0

我只是尝试了同样的事情,并且只有在我重建包含 linq-to-sql dbml 文件的解决方案后才能进行查询。在对关系进行更改后,您是否重建了解决方案?

这是使用两个表完成的,让我链接两个视图,我将使用结果编辑此答案

编辑:好吧,这很糟糕,在一个 LinqToSql 查询上加上一个只查询数据库中视图的关联是行不通的。但是,您可以在 linq 查询中指定连接。可悲的是,这就像在 DBML 文件和您的代码中指定它的双重工作,但如果您只是在那里发表一些评论,人们会理解您为什么这样做。

所以至少在 DBML 文件中,“join”对其他人是可见的。

于 2009-08-17T06:46:32.233 回答