有谁知道如何返回最后一个有空值的有序字符串列表?我有这样的事情:
using(var context = new DomainEntities())
{
var result = context.Users.OrderBy(u => u.LastName).ThenBy(u => u.FirstName);
}
Run Code Online (Sandbox Code Playgroud)
我的问题是这个查询在非空值之前返回空值.
有什么想法吗?
Cra*_*ntz 54
我会做:
using(var context = new DomainEntities())
{
var result = context.Users.OrderBy(u => u.LastName == null)
.ThenBy(u => u.LastName)
.ThenBy(u => u.FirstName == null)
.ThenBy(u => u.FirstName);
}
Run Code Online (Sandbox Code Playgroud)
...应该产生合理的SQL.
我不知道您是否可以在某处进行一些切换。否则,直截了当的方法可能类似于
using (var context = new DomainEntities())
{
var FirstPart = context.Users.Where(u => u.LastName != null);
var SecondPart = context.Users.Where(u => u.LastName == null);
var Result = FirstPart.Union(SecondPart);
}
Run Code Online (Sandbox Code Playgroud)
var result = context.Users.OrderBy(x => x.FirstName ?? x.LastName);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10123 次 |
| 最近记录: |