我的班级,
public class User
{
public string Username
{
get;
set;
}
public string Password
{
get;
set;
}
public string [] Roles
{
get;
set;
}
}
我的查询是,
var innerJoinQuery =
(from u
in db.Users
join ur in db.UserRoles
on u.UserID equals ur.UserID
join r in db.Roles on ur.RoleID equals r.RoleID
select new {
Username=u.Username,
Password=u.Password,
RoleName = r.RoleName
}).ToList();
上面查询中获取的数据是,
username password RoleName
john 123 user
john 123 admin
john 123 super user
David 12345 super user
petter 123456 user
我想使用Linq在我的用户类对象中获取此数据,
应该是,
username password RoleName
john 123 { "user", "admin", "super user" }
David 12345 { "super user" }
petter 123456 { "user"}
我已经从网上尝试了许多示例,但没有得到答案。
希望为您提供解决方案。
您正在寻找GroupBy
方法。不确定您的ORM是否支持它,但是您始终可以在查询后进行分组:
GroupBy