首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Linq到Sql子查询复合体

Linq到Sql子查询复合体
EN

Stack Overflow用户
提问于 2015-06-23 05:24:32
回答 2查看 80关注 0票数 1

tblItem

  • 名字
  • ProductID

tblProduct

  • 名字
  • ProductID
  • CategoryID

tblCategory

  • 名字
  • CategoryID CMP.tblItems中的var itms = from item t2s =(在CMP.tblProducts中g.CategoryID==CatID选择g.ProductID的g),其中item.Name.Contains(Model) && item.ProductID.ToString() == t2s.ToString()选择新的{ item.Name };

我的问题是不止一个产品是返回到t2s (子查询)。如果我将FirstOrDefault()添加到子查询,那么它将只匹配一个产品id!我需要匹配它返回的所有产品。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-07-21 19:51:06

试试这个:

代码语言:javascript
复制
var itms=from item in CMP.tblItems
         from g in CMP.tblProducts
         where item.Name.Contains(Model) && item.ProductID == g.ProductID && g.CategoryID == CatID
         select new {item.Name};
票数 1
EN

Stack Overflow用户

发布于 2015-07-21 20:26:49

使用LINQ为您创建的导航属性。Item应该具有属性Product。所以你可以简单地这样做:

代码语言:javascript
复制
var itms = from item in CMP.tblItems
    where item.Name.Contains(Model) && item.Product.CategoryID = CatId
    select new { item.Name };
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30994476

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档