asp.net(MVC) linq语句多条件查询

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了asp.net(MVC) linq语句多条件查询相关的知识,希望对你有一定的参考价值。

var entitys = entityFacade.GetAll().ToDataSourceResult(request, ModelState);
return Json(entitys);
上面的语句是查询全部的,现在我想条件查询,也就是例如,我设一个变量string str="123",
然后查询sql语句如下:
select*from student where SID='123' or SName='123' or SPwd='123'

这种sql语句,用linq语句该怎么写?想破头了都没实现,网上搜的那些多条件查询,好像不符合我的胃口,请教大家了

参考技术A

linq的多条件查询无非就是用where方法。

var entitys=entityFacade.GetAll().ToDataSourceResult(request, ModelState);
 if(!string.IsNullOrEmpty(SID))
   entitys=entitys.Where(x=>x.SID=='123');
 
  if(!string.IsNullOrEmpty(SPwd))
   entitys=entitys.Where(x=>x.SPwd=='123');
 
 
 return Json(entitys)

追问

这样写很麻烦的,如果有多个查询,这代码冗余量太多了,能不能这样?
if(!string.IsNullOrEmpty(SID||SPwd))
entitys=entitys.Where(x=>x.SID=='123'||x=>x.SPwd=='123');

像这种样子的?

本回答被提问者和网友采纳

asp.net mvc+ef框架下的多条件查询

参考技术A Linq 查询吗?
var query=db.tables.where(o=>o.name=="dasdas"&&age<=30&&age>=21).tolist();追问

是这种复合查询,用户可能填一个,也可能填多个,进行搜索

追答

var query=db.tables;
string start="",end="";
int type1=-1,type2=-1;
if(!string.IsNullOrEmpty(start)&&!string.IsNullOrEmpty(end))

query=query.where(o=>o.start==start&&o.end==end);


if(type1!=-1)//-1 就是请选择

query=query.where(o=>o.车辆类型==type1);

if(type2!=-1)

query=query.where(o=>o.车辆高度==type2);

return query;

本回答被提问者采纳

以上是关于asp.net(MVC) linq语句多条件查询的主要内容,如果未能解决你的问题,请参考以下文章

asp.net mvc+ef框架下的多条件查询

asp.net中,多条件查询的sql语句怎么写?!

c# linq 动态多条件查询语句的写法

asp.net多条件查询如何实现

Asp.Net MVC 开发技巧

Linq to Entity 多条件 OR查询