gpt4 book ai didi

c# - 使用 Dataview.RowFilter 从 SomeTable 中选择 TOP 5 *?

转载 作者:行者123 更新时间:2023-11-30 22:46:28 36 4
gpt4 key购买 nike

我需要从缓存的 Dataview 对象中选择 5 个最近的行,有什么办法可以做到吗?

我试过了,但 Indexer DataColumn 是空的。 :

public static DataView getLatestFourActive()
{
DataTable productDataTable = getAll().ToTable();
DataColumn ExpressionColumn = new DataColumn("Indexer",typeof(System.Int32));
ExpressionColumn.Unique = true;
ExpressionColumn.AutoIncrement = true;
ExpressionColumn.AllowDBNull = false;
ExpressionColumn.AutoIncrementSeed = 0;
ExpressionColumn.AutoIncrementStep = 1;
productDataTable.Columns.Add(ExpressionColumn);

DataView productFilteredView = productDataTable.DefaultView;
productFilteredView.RowFilter = "isActive=1 and Indexer<4";
return productFilteredView;
}

getAll() 返回缓存的DataView

谢谢

最佳答案

我在 this article 中遇到了上面相同的样本,但最后一篇文章说提供的代码不起作用。

然而,this article有一个确实有效的解决方案,所以这里是您可以使用的代码:

public static DataView getLatestFourActive() {
DataTable productDataTable = getAll().ToTable();
DataTable cloneDataTable = productDataTable.Clone();

for (int i = 0; i < 4; i++) {
cloneDataTable.ImportRow(productDataTable.Rows[i]);
}
return new DataView(cloneDataTable);
}

关于c# - 使用 Dataview.RowFilter 从 SomeTable 中选择 TOP 5 *?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2627695/

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