我的select查询结果在column1和column2中有重复的值,而column3和column4的值对于给定的column1和column2值是不同的。
我的select查询结果如下
ab ab_ds a 4
ab ab_ds b 6
bc bc_ds d 8
bc bc_ds a 8如何获得如下所示的webgrid?
ab ab_ds a 4 b 6
bc bc_ds d 8 a 8 请建议我是否可以在query或webgrid中执行某些操作
发布于 2012-10-29 20:54:58
如果使用linq,则可以使用GroupBy()方法。
基于比较值为字符串的类的示例
IEnumerable<IGrouping<string, ColumnClass>> groupBy = list.GroupBy(
y => y.Column1 + " " + y.Column2);这将为您提供一个IEnumerable< IGrouping<字符串YourClass >>,然后您可以对其使用另一个linq查询:
groupBy.Select(item => item.Aggregate(
item.Key, (current, columnClass) => current + (
" " + columnClass.Column3 + " " + columnClass.Column4))).ToList();发布于 2012-10-29 17:23:52
这个问题很笼统,所以我将给出一个可能对你有帮助的一般性答案。
我使用具有MultiHashDictionary的C5通用集合库,这是一个通用集合,您可以将结果加载到那里并按您所说的方式获取它们。
MultiHashDictionary<K, V>类似于Dictionary<k,v>,但键不是唯一的,您可以用来对其进行分组。它能帮助我获得像你这样的结果。
从http://www.itu.dk/research/c5/获取C5库
https://stackoverflow.com/questions/13118634
复制相似问题