简单的JOIN语法在实体框架中不起作用

时间:2014-04-04 14:20:49

标签: c# linq entity-framework

我正在尝试将连接添加到现有的LINQ语句,但我的语法不正确。 我看了here其他地方的例子,我的建筑仍然没有用。 Visual Studio正在发挥他的风格。这两个数据集都在我尝试使用的上下文中,所以不确定我做错了什么:

"加入"下的红色波浪线关键字产生错误"不能从查询推断类型参数" " n"和" nc"别名产生错误"无法解析符号"

enter image description here

我的原创,工作声明

 var query = from nc in context.NewClubs
                           where nc.ClubMasterCustomerId == clubMasterCustId
                           select nc;
               var results = query.Any();

我想做什么(在SQL中说明)

select nc.NewClubName,nc.Id from NewClub as nc
join NewClubBuilder ncb on ncb.NewClubId = nc.Id
where ncb.BuilderClubKeyNumber = 'K00841'

我从SQL到LINQ的翻译(不工作)

var query = from nc in context.NewClubs
            join n in context.NewClubBuilders on n.NewClubId equals nc.Id
            where nc.ClubMasterCustomerId == clubMasterCustId
            select nc;

            var results = query.Any();

由于

1 个答案:

答案 0 :(得分:3)

使用连接属性,nc.Id是第一个

join n in context.NewClubBuilders on nc.Id  equals n.NewClubId