请教查询子表的Lambda表达式的写法!

一只熊猫 2012-11-27 01:04:00
请教大家,下面这个语句怎么转换成 db.Companys.Where( x=> x.Departments........)的写法呢?


var q = from x in db.Companys
from y in db.Departments
where x.DepartmentId == y.Id && y.Name == "业务部"
select x;
...全文
478 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
星空蔚蓝 2013-03-21
  • 打赏
  • 举报
回复
引用 8 楼 ranshouxu 的回复:
C# code?1234567IQueryable<PARA_COMPANYS> modelL = db.PARA_COMPANYS; //添加查询条件 if (!string.IsNullOrEmpty(strCODE_NO)) { ……
我发的这个是对于单表的 动态条件查询~
星空蔚蓝 2013-03-21
  • 打赏
  • 举报
回复

IQueryable<PARA_COMPANYS> modelL = db.PARA_COMPANYS;
                        //添加查询条件
                        if (!string.IsNullOrEmpty(strCODE_NO))
                        {
                            modelL = modelL.Where(p => p.CODE_NO == strCODE_NO);
                        }
//后面加if就行了 最后得到modelL

不知道我说的大家能看明白们 呵呵 比较笨这个方法 求高手简洁代码
ansiboy 2013-03-21
  • 打赏
  • 举报
回复
这个框架可以解决你拼接的问题,http://esql.codeplex.com
一只熊猫 2012-11-27
  • 打赏
  • 举报
回复
谢谢大家。 我是想用Expression类拼动态查询条件,from x in xx 的形式,不知道如何拼接。。。
q107770540 2012-11-27
  • 打赏
  • 举报
回复
引用 楼主 Going1981 的回复:
请教大家,下面这个语句怎么转换成 db.Companys.Where( x=> x.Departments........)的写法呢? var q = from x in db.Companys from y in db.Departments where x.DepartmentId == y.Id && y.Name == "业务部" select x;
var q=db.Companys.Join(db.Departments.Where(d=>d.Name == "业务部"),x=>x.DepartmentId,y=>y.Id ,(x,y)=>x);
你的选择B 2012-11-27
  • 打赏
  • 举报
回复
手写,仅供参考:

IQueryable<Companys> orders = entity.Companys.Join(entity.Departments.where(a => a.Name = "业务部"), b => b.Id, s => s.DepartmentId, (m, n) => m);
EnForGrass 2012-11-27
  • 打赏
  • 举报
回复
var q = from x in db.Companys from y in db.Departments where x.DepartmentId == y.Id && y.Name == "业务部" select x; 这种看起来更清晰
天下如山 2012-11-27
  • 打赏
  • 举报
回复
有时候我们还是会用查询表达式法 而不用基于方法的查询。 因为有些是可以互换的 但是有些互换起来就难的。
bdmh 2012-11-27
  • 打赏
  • 举报
回复
你可以用Linq的 Join

8,497

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 LINQ
社区管理员
  • LINQ
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧