我有一个通过反序列化JSON消息获得的DataTable。我不知道列名是什么,所以我不能在特定的列上使用DataView.Sort。我只想颠倒行的顺序。这是我试过的:
var reversedTable = new DataTable();
for (var row = originalTable.Rows.Count - 1; row >= 0; row--)
reversedTable.Rows.Add(response.Messages.Rows[row]);
但抛出“System.ArgumentException:此行已经属于另一个表。”我怎样才能完成这个看似简单的任务呢?提前谢谢,
谢
解答:
var reversed = original.Clone();
for (var row = original.Rows.Count - 1; row >= 0; row--)
reversed.ImportRow(original.Rows[row]);
答案 0 :(得分:1)
我之前看过那个错误信息..... 您不能直接在一个表中添加一行到另一个表。首先,你必须克隆表,然后你可以通过并为每一行调用ImportRow()。
查看geekzilla以获得一个不错的例子。
我希望有所帮助!