我有一个LTSQL查询,它返回SQL Server DB中的所有用户和用户编辑。 例如,一个用户可以拥有许多用户角色。因此,在返回的查询中,如果查看单个用户行,则每个userRole都将具有EntitySet(UserRole)
返回所有关系数据的C#LTSQL查询只是
var results = from u in db.Users
Select u;
Gridview.DataSource = results;
Gridview.Databind;
这将显示用户表中的所有数据,但不显示作为查询结果中的实体的userroles。
如果我想显示来自users表的用户信息以及单个gridView行上的所有用户信息,那么最有效的方法是什么? gridView看起来应该是这样的:
UserId | UserName | UserRoles |
1 | John Smith | Admin, Accountant | Edit
2 | Dave Jones | Sales, Admin | Edit
答案 0 :(得分:2)
这样的事情:
var results = from u in db.Users
Select new {
UserID = u.UsrID,
UserName = u.UserName,
UserRoles = string.Join(", ", u.UserRoles.Select(r => r.Name))
};