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

Popular posts from this blog

c# - How to get the current UAC mode -

postgresql - Lazarus + Postgres: incomplete startup packet -