gpt4 book ai didi

c# - Linq 按 bool 值排序

转载 作者:IT王子 更新时间:2023-10-29 03:35:24 25 4
gpt4 key购买 nike

我有一个 linq 查询,我想通过 f.bar(一个字符串)对其进行排序,但我还想首先通过 f.foo(一个 bool 字段)对其进行排序。就像下面的查询。

(from f in foo
orderby f.foo, f.bar
select f)

虽然这个编译器没有按预期工作。它只是按 f.bar 命令,忽略 bool 字段。

我知道我很愚蠢,但我需要做什么才能获得这种行为?

谢谢

最佳答案

这应该可以正常工作 - 它应该首先对具有 false foo 值的实体 进行排序,然后对具有 true foo 值的实体进行排序。

这当然适用于 LINQ to Objects - 您实际使用的是哪个 LINQ 提供程序?

这是一个 LINQ to Objects 示例,它可以工作:

using System;
using System.Linq;

public static class Test
{
public static void Main()
{
var data = new[]
{
new { x = false, y = "hello" },
new { x = true, y = "abc" },
new { x = false, y = "def" },
new { x = true, y = "world" }
};

var query = from d in data
orderby d.x, d.y
select d;

foreach (var result in query)
{
Console.WriteLine(result);
}
}

}

关于c# - Linq 按 bool 值排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5408177/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com