linq加入查询

时间:2010-04-02 00:27:42

标签: linq-to-sql

我正在尝试在linq中加入,但由于某种原因我无法访问表的主键。这是'h.ProjectId'似乎不被接受。 给出以下错误

CW1.SearchWebService.Bid does not contain a definition for 'ProjectId' and no extention method 'ProjectId' accepting a first argument of type 'CW1SearchWebService.Bid'

代码:

var allProjects = ctxt.Project.ToList() ;
var allBids = ctxt.Bid.ToArray();// return all bids

var projects = (from project in allProjects join h in allBids
                              on
                           project.ProjectId equals  h.ProjectId)

2 个答案:

答案 0 :(得分:1)

根据您的错误消息,问题是h.ProjectId。错误消息显示“Bid”类(CW1.SearchWebService.Bid)不包含成员ProjectId,因此该语句失败。

您应该重新访问您的类,并查看正确的连接选项。如果您确定该字段应该在表中,则可能需要重新生成模式。

答案 1 :(得分:0)

可能在将字段添加到数据库之前生成了LINQ模式。如果它是使用sqlmetal生成的,请尝试再次在数据库上运行sqlmetal。否则只需使用设计师添加它。