1. ホーム
  2. c#

[解決済み] データテーブルの行の並べ替え

2022-04-23 09:53:15

質問

の中に2つのカラムがあります。 DataTable を、このようにします。

COL1   COL2
Abc    5
Def    8
Ghi    3

これを整理すると datatable に基づいて COL2 を降順に並べます。

COL1            COL2
ghi             8
abc             4
def             3
jkl             1

こんなことをやってみました。

ft.DefaultView.Sort = "COL2 desc";
ft = ft.DefaultView.ToTable(true);

を使用せずに DataView をソートしたい。 DataTable そのものであって DataView .

解決方法は?

DataTableをインプレースでソートするのは難しいようですね。

できることは、元のDataTableから作成したDataViewから、新しいDataTableを作成することです。 そのDataViewに好きなソートやフィルタを適用し、そのDataViewから データビュー.ToTable メソッドを使用します。

   DataView dv = ft.DefaultView;
   dv.Sort = "occr desc";
   DataTable sortedDT = dv.ToTable();