c# - convert List<T> 's one property to comma separated item -
my database return value below:
a b c d tes t 1 ard tes t 1 blk tes t 1 fle tes t 1 hen tes t 1 riv
i have change below:
tes t 1 ard,riv,blk,fle,hen,riv
using c#.
c# class above result entity:
public class entity { public string a{get; set;} public string b{get; set;} public string c{get; set;} public string d{get; set;} }
since i'm using more 1 database server ms sql,oracle,my sql don write query each. example: in ms sql have stuff , xml method acheieve this.
group entities composite key { a, b, c }
, create concatenated d
value items in group:
var result = e in entities // entities in-memory list group e new { e.a, e.b, e.c } g select new entity { = g.key.a, b = g.key.b, c = g.key.c, d = string.join(",", g.select(e => e.d)) };
you can move query execution memory calling db.entities.asenumerable()
. of course, require downloading table data database client. if grouping on server side, have n+1 queries, n number of groups. first query return distinct values of grouping key. further queries select required field given group key value.
Comments
Post a Comment