linq条件提取

zhangaihongde 2014-05-26 03:29:33
///1
var data = LoadQueryConditions(db.Transfer, whereModel);
var list = from dalModel in data
join b in db.WarehouseLocation on dalModel.OutOWaLID equals b.OWaLID
join c in db.WarehouseLocation on dalModel.InOWaLID equals c.OWaLID
where (b.OAgeID == _userToken.AgencyID && c.OAgeID == _userToken.AgencyID)

select c



////2
var data = LoadQueryConditions(db.Delivery, whereModel);

if (_userToken.RoleID.ToString() != WHMS.Common.DefaultValue.ADMIN_ROLE_ID)
{
data = data.Where(x => x.FactoryOAgeID == _userToken.AgencyID || x.WarehouseOAgeID == _userToken.AgencyID);
}


var list = from dalModel in data
select c


有没有什么办法可以把 “//1” 内的红色字体那块写成 "///2" 内绿色类的写法,就是把条件红色的那块提取出来,专门写个方法,求大神指点!!!!
...全文
261 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaohuzihei 2014-06-15
  • 打赏
  • 举报
回复
菜鸟路过,你是想用循环?还是想用linq啊?
游离失所 2014-05-27
  • 打赏
  • 举报
回复
我只会绿色的写法,不会红色的写法。。红色看不懂
threenewbee 2014-05-27
  • 打赏
  • 举报
回复
提取Where可以用Expression<Func<TData, bool>>,提取包括Join在内可以用Func<IQueryable<TData>, IQueryable<TResult>>

13,347

社区成员

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

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