特定のカテゴリでテーブルをグループ化したい。Linqクエリの特定の結果を組み合わせる
カテゴリは次のようになります。"AAA", "BBB", "CCC", "DDD", "EEE", etc...
以下のコードを使用して、各グループの結果を簡単に取得できます。ただし、2つのカテゴリを結合し、新しいKeyが生成される特別なケースがあります(たとえば、Category BBBとDDDは1つのカテゴリになります)。 キー: "AAA"、アイテム:(AAAの下の項目) キー: "BBB/DDD"、アイテム:(BBBとDDD下の項目) キー: "CCC"
私の最終的な結果は次のようになります、アイテム:(CCCの下のアイテム)
これはしばらくの間行ってきましたが、何もできません。基本的に、あなたがする必要があるすべては、それによってグループ化する前にキーを変換することです
var query= ds.Tables[0].AsEnumerable()
.GroupBy(g => g.Field<string>("category"))
.Select(a => new workType
{
Key = a.Key,
Item = a.ToList()
});
public class workType
{
public string Key { get; set; }
public List<DataRow> Item { get; set; }
}
いくつかのパラメータがないと、これがどのように可能かわかりません。あなたは「AAA」、「BBB」などと言っている「キー」を選択しています。 'Key = a.Key ||のような他の機能を提供する必要があります。 b.key'。私はこれを解決するための一般的な方法はありません。 – jdmdevdotnet