gpt4 book ai didi

c# - 根据列中的值对数据表进行排序

转载 作者:太空宇宙 更新时间:2023-11-03 23:07:50 24 4
gpt4 key购买 nike

我有一个数据表,

PId     PName   Qty
123 XYZ 2
223 ABC 4
434 PQR 33

我想按“PName”而不是 asc/desc 顺序对其进行排序,如果我将 PName 作为“PQR”传递,那么 PQR 应该首先出现,然后是其余行,同样,如果我通过“ABC”,那么“ABC”应该首先出现,然后是其余行。基本上想重新排列第一行应该是我保存在变量中的“PName”的行。

谢谢

期望的输出如果我有“ABC”,那么上面的数据表应该重新洗牌,

PId     PName   Qty
223 ABC 4
123 XYZ 2
434 PQR 33

如果我有“PQR”,那么上面的数据表应该重新排列为,

PId     PName   Qty
434 PQR 33
123 XYZ 2
223 ABC 4

最佳答案

    DataTable dt = new DataTable();
dt.Columns.Add("PId", typeof(Int32));
dt.Columns.Add("PName", typeof(string));
dt.Columns.Add("Qty", typeof(Int32));
dt.Rows.Add(123, "XYZ", 2);
dt.Rows.Add(223, "ABC", 4);
dt.Rows.Add(434, "PQR", 33);

var stkLists = dt.AsEnumerable().ToList();
var matchList = stkLists.Where(m => m["PName"].ToString().StartsWith("PQR")).ToList();
var FinalList = matchList.Concat(stkLists.Except(matchList).ToList());

关于c# - 根据列中的值对数据表进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40560332/

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