linq contain和orderby

var data = from px in db.vw_ygpx
// orderby px.ygid descending
select px;

if (!string.IsNullOrEmpty(key))
{
key = key.Trim();
// data = data.Where(d => d.ygmc.Contains(key) || d.gh.Contains(key));
data = from d in data
where d.ygmc.Contains(key) || d.gh.Contains(key)
//where SqlMethods.Like(d.ygmc , "%肖%")

select d ;
}

var res=(from d in data
select d).AsEnumerable().OrderByDescending(d => d.ygid).Skip((pageIndex - 1) * pageSize).Take(pageSize);
return JsonHelper.ToJson(res);//这是一个未解之迷,当不加AsEnumerable()时就会报丢失字段,当where d.ygmc.Contains(key) 直接写成where d.ygmc.Contains("肖")时又不会报错

时间: 2024-07-31 06:58:15

linq contain和orderby的相关文章

C# linq查询 动态OrderBy

groupList是原始数据集合,List<T> sortOrder是排序类型,desc 或者asc sortName是排序属性名称 1.使用反射. private static object GetPropertyValue(object obj, string property) { System.Reflection.PropertyInfo propertyInfo = obj.GetType().GetProperty(property); return propertyInfo.G

linq 实现动态 orderby

class Pet { public string Name{get;set;} public int Age{get;set;} } void Main() { Pet[] pets = { new Pet { Name="Tim", Age=18 }, new Pet { Name="Allen", Age=22 }, new Pet { Name="Bill", Age=20 } }; //如果我们想根据Age进行排序 很容易想到这样来写:

C#解决Linq OrderBy() 失效的小技巧

前言 前几天的一个数据列表中我用了Linq GroupBy 和OrderBy. 排序在本机正常使用,发到测试后排序死活不对,很是郁闷,总以为是程序问题.于是请教了另外一个同事.有了以下的答案. 问题原因和解决方法 因为服务器装的是英文版操作系统,没有中文包,所以碰见中文排序无法识别,所以使用OrderBy时需要单独处理下. CultureInfo culture = CultureInfo.GetCultureInfo("zh-cn"); List<TeamDto> tea

linq.js

今天在项目里发现一个类似于linq的写法,上网百度了一下发现是linq.js,感觉还挺有用的,于是把这个文章转载过来与大家分享,也让自己学习. 内容: 在做后台开发的时候,总是会碰到将拿到手的数据进行条件校验,而这些数据又不仅仅是单纯的一个,有时候会是一串大数据,需要自己在后台处理进而展示到前台页面上,酱紫自己第一反应就是使用for循环来遍历,并把所需的数据放在相应的地方.可是导致的后果却是再审视后台的代码时,那么多那么多重复的代码,我可以把对同一个dom节点的遍历写两遍,于是我就被同事大神给嘲

LINQ查询基本操作

1.如何使用LINQ LINQ作为一种数据查询编码方式,本身并不是独立的开发语句,也不能进行应用程序开发.在.NET3.5中,可以在C#中集成LINQ查询代码.在任何源代码文件中,要使用LINQ查询功能,必须引用System.Linq命名空间.使用LINQ to XML要引用System.Xml.Linq命名空间,使用LINQ to ADO.NET要引用System.Data.Linq命名空间. 2.LINQ查询表达式 查询表达式关键字: from:指定要查找的数据源以及范围变量,多个from子

状态机/迭代器/LINQ/协程

状态机 有限状态机(Finite State Machine 或 Finite State Automata)是软件领域中一种重要的工具. 状态机允许一个对象在其内部状态改变时改变它的行为.对象内部状态决定行为方式,对象状态改变行为方式改变,这里强调内部状态. Command 模式是将命令请求封装成一个为对象,将不同的请求对象参数化以达到同样的调用执行不同的命令: State 模式是将对象的状态封装成一个对象,是在不同的状态下同样的调用执行不同的操作. 迭代器是一个典型的状态机例子,后续会讲解.

十四、C# 支持标准查询运算符的集合接口

支持标准查询运算符的集合接口. System.Linq.Enumeralbe类提供的一些常用的API 来执行集合处理 1.匿名类型 2.隐匿类型的局部变量 3.集合初始化器 4.集合 5.标准查询运算符 本章主要讨论泛型集合接口. 非泛型的集合类,待查. 一.匿名类型和隐式类型的局部变量声明 C#3.0增强. 1.匿名类型 一种特殊的数据类型,它最终是由编译器声明的,而非通过已定义好的类来声明的. 和匿名函数相似,当编译器看到一个匿名类型时,会自动执行一些后台操作,生成必要的代码, 允许像显式声

Fireasy版本发布 1.5.40.42030

开发指南 代码生成 1.5.40.42030  2015-4-1 ** Fireasy.Common1.完善To方法,可以对可枚举类型进行转换2.完善Json序列化对动态类型的支持 ** Fireasy.Data3.增加Update方法的另一个版本 ** Fireasy.Data.Entity4.增强Linq扩展方法Order和ThenBy5.实体增加All扩展方法,可以简便返回所有属性6.仓储增加Include.Associate和Batch方法,EntityContext增加Apply方法7

转载:C#特性-表达式树

原文地址:http://www.cnblogs.com/tianfan/ 表达式树基础 刚接触LINQ的人往往觉得表达式树很不容易理解.通过这篇文章我希望大家看到它其实并不像想象中那么难.您只要有普通的LINQ知识便可以轻松理解本文. 表达式树提供一个将可执行代码转换成数据的方法.如果你要在执行代码之前修改或转换此代码,那么它是非常有价值的.尤其是当你要将C#代码----如LINQ查询表达式转换成其他代码在另一个程序----如SQL数据库里操作它. 但是我在这里颠倒顺序,在文章最后你很容易发现为