我有一个查询,需要使用Join/On,但随之而来的是,我得到了以下错误消息:您必须在'Equals'运算符的两侧至少引用一个范围变量
这是我的简化查询:
Dim Result As String = (From cust In Model.Customer
Join comp In Model.Company On cust.Id_Customer Equals 1
Select cust.Name, comp.Name)
有没有一种方法可以将范围变量Equals与常量进行比较?
虽然纯SQLJOINS
允许一个可能不引用任何要联接的表的联接条件,但LINQJoin
需要一个同时引用两个表的联接状态。On
的条件要求对要联接的两个表中的列进行比较。例如,一个有效的查询是:
Dim Result As String = (From cust In Model.Customer
Join comp In Model.Company On cust.Id_FavoriteCompany Equals comp.Id_Company
Where cust.Id_Customer = 1
Select cust.Name, comp.Name)
如果您有列Customer。Id_FavorityCompany和Company。Id_公司。
您需要在两个表中的一列上联接。
更多信息:
Visual Basic LINQ查询运算符