[英]Linq to SQL - How to sort results from query
我有一个 LINQ 查询我正在检索,尽管在它的上下文中我将如何对 output 进行排序,我尝试过 sortby 等但无济于事
DataClasses1DataContext db = new DataClasses1DataContext();
var returnall = from p in db.Orders
select p.ShipName;
var returnall = from p in db.Orders
orderby p.ShipName
select p.ShipName;
可以在MSDN示例页面上找到各种LINQ函数的便捷参考。
您可以使用OrderBy为单个属性订购多个属性使用ThenBy
DataClasses1DataContext db = new DataClasses1DataContext();
var returnall = db.OrderBy(r=> r.OrderDelivaryDate).
ThenBy(r => r. OrderName);
此查询将首先按OrderDelivaryDate
排序,然后按OrderName
这里有一些简单的linq查询http://msdn.microsoft.com/en-us/vcsharp/aa336756#thenBySimple
var ret = db.Orders.OrderBy( x => x.ShipName );
对一个或多个字段的查询结果进行排序:
数据:
List<Employee> emp = new List<Employee>() { new Employee() { emp_id = 101, emp_name = "David", emp_lang = "Java", dpt_id = 1 }
,new Employee() { emp_id = 102, emp_name = "Lana",emp_lang = "C#", dpt_id = 2 }
,new Employee() { emp_id = 103, emp_name = "Sona",emp_lang = "Java", dpt_id = 3 }
,new Employee() { emp_id = 104, emp_name = "Mike",emp_lang = "C++", dpt_id = 3 }
,new Employee() { emp_id = 105, emp_name = "Roma",emp_lang = "C#", dpt_id = 1 }
询问:
var res = from e in emp
orderby e.emp_lang, e.dpt_id
select new { e.emp_name, e.emp_lang, e.dpt_id }
结果:
{ emp_name = "Roma", emp_lang = "C#", dpt_id = 1 }
{ emp_name = "Lana", emp_lang = "C#", dpt_id = 2 }
{ emp_name = "Mike", emp_lang = "C++", dpt_id = 3 }
{ emp_name = "David", emp_lang = "Java", dpt_id = 1 }
{ emp_name = "Sona", emp_lang = "Java", dpt_id = 3 }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.