我看到了一些按多列分组的示例。我明白了。
我有一个DataTable,我希望根据特定字段获取不同的行。
例如,这有效:(表中有两个以上的字段),但我希望这两个字段不同,返回所有字段)
var rtable = myDataTable.AsEnumerable()
.GroupBy(a => new { FirstId = a["FirstId"], SecondId = a["SecondId"] })
.Select(a => a.First()).CopyToDataTable();
我有一个列列表,并希望使用我的列列表作为分组列。我在列表中也有这些字段名称字符串。
简单示例:
var groupMap = new List<MyMap>{
new MyMap(){FieldName = "FirstId", SomeOtherThing= "Hi", IsUnique = true},
new MyMap(){FieldName = "SecondId", SomeOtherThing= "Cats", IsUnique = true },
new MyMap(){FieldName = "FirstName", SomeOtherThing= "Dogs", IsUnique = false},
};
我想使用groupMap
属性FieldName
IsUnique=true
来创建要用于GroupBy
的列。 由于我有这个列表,如何使用它来创建具有此条件的GroupBy
?从列表中重新输入内容有点微不足道但是我有其中的几个并想要更多基于MyMap
类列表属性的通用解决方案。