在linq中按len()排序 [英] Order by len() in linq
本文介绍了在linq中按len()排序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
这是我在sql server中的查询,一切正常
this is my query in sql server and everything works fine
select * from DetalleNotas
order by len(ColProduct), ColProduct
PROCT1
PROCT2
PROCT3
PROCT4
PROCT5
PROCT6
PROCT7
PROCT8
PROCT9
PROCT10
但我希望我的查询在linq c#
我尝试了什么:
我尝试了这个并且不起作用
but i want my query in linq c#
What I have tried:
I tried this and it does not work
var product = (from d in db.Product
orderby len(d.ColProduct), d.ColProduct
select new
{
product= d.product
});
只有这个查询有效
only this query works
var product = (from d in db.DetalleNotas
orderby d.ColProduct
select new
{
product= d.product
});
这是结果我的函数查询
This is the result of my functional query
PROCT1
PROCT10
PROCT2
PROCT3
PROCT4
PROCT5
PROCT6
PROCT7
PROCT8
PROCT9
推荐答案
我回答我的问题
I answer my question
var product = (from d in db.Product
orderby d.ColProduct.Length, d.ColProduct
select new
{
product= d.product
});
解决方案#1的Lambda版本:
Lambda version of solution #1:
var orderedProducts = db.Product
.OrderBy(d=> new {d.ColProduct.Length, d.ColProduct})
.Select(d=> d.product);
这篇关于在linq中按len()排序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文