2010-05-07 40 views
1

我有下面的查詢:如何在Linq中獲取逗號分隔值?

var users = (from a in dc.UserRoles 
          join u in dc.Users on a.intUserId equals u.ID 
          join r in dc.Roles on a.intRoleId equals r.ID 
          where r.intClientId == clientID 
          select new UserRoleDetail 
          { 
           ID = a.ID, 
           intUserId = a.intUserId, 
           intRoleId = a.intRoleId, 
           Name =u.FullName, //Here I need comma separated values. 
           intAssignedById = a.intAssignedById, 
           RoleName = r.vchName, 
           Function = u.vchFunction 
          }); 

我需要的"Name =u.FullName"所有值是逗號分隔的由intRoleId在一個單一的記錄組。我的意思是對於每一個角色,我都需要用單個記錄逗號分隔的所有用戶名。任何建議?

回答

0

您想查看IEnumerable.Aggregate()方法。

+0

請你解釋一下如何使用它。我是Linq的新手。 在此先感謝。 – 2010-05-08 15:35:52

+0

有關示例,請參閱http://stackoverflow.com/questions/2861202/linq-query-with-subquery-as-comma-separated-values。 – 2011-03-23 18:44:34