linq を使用して列を動的にグループ化する必要があります。つまり、ユーザーは実行時にテーブルと列を選択します。
例: 上記の表にはテリトリーがあり、
州、銀行名、
ユーザーがグループ化のためにこれらの列を選択したと仮定します (地域、銀行名)
これを行うためにlinqをどのように使用できますか?
System.Linq.Dynamicを使用することもできます
var fields = new List<string>() { "Territory", "Bank Name"};
var qfields = string.Join(", ", fields.Select(x => "it[\"" + x + "\"] as " + x));
var q = dt
.AsEnumerable()
.AsQueryable()
.GroupBy("new(" + qfields + ")", "it")
.Select("new (it as Data)");
foreach (dynamic d in q)
{
foreach (var row in d.Data)
{
// Do your work here, using d.Territory
}
}