动态组成linq查询的方法

homearco 2013-07-13 03:12:50
现在view中有三个dropdownlist供用户选择部门department,状态status,工种worktype查询出复合条件的人。用户可能选择其中一个或多个条件查询。
需要在controller里接收这三个参数,组成一句linq查出用户想选的人员,如何实现。
sql的话就比较简单
如果三个参数全空就
string sqlcmd=select * from users ;
如果不是全空,则
String sqlcmd=select * from users where
之后判定不为空的参数append到string后面组成sql语句。
linq的话不知道有没有简便的方法实现此功能。
...全文
103 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
homearco 2013-07-15
  • 打赏
  • 举报
回复
感谢,原来linq是这样的机制
EnForGrass 2013-07-13
  • 打赏
  • 举报
回复
public void Test(string department, string status, string worktype) { QueryContext query = new QueryContext(); var q = from u in query.Users select u; if (!string.IsNullOrEmpty(department)) { q = q.Where(p => p.department== department); } if (!string.IsNullOrEmpty(status)) { q = q.Where(p => p.status == status); } if (!string.IsNullOrEmpty(worktype)) { q = q.Where(p => p.worktype== worktype); } q.ToList(); //上边的所有if,只有到此处才会执行 } state类型自己修改下,大概是这样 参考http://blog.csdn.net/q107770540/article/details/5724013

8,497

社区成员

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

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