我有一个控制器传递的模型元素的数组,查看
public ActionResult UsersInRoles()
{
using (var ctx1 = new UsersModel())
{
var model = new UsersInRolesViewModel();
model.UserProfiles = ctx1.UserProfiles.ToList();
model.UserRoles = ctx1.UserRoles.ToList();
return View(model);
}
}
我通过传递这两个型号的我的看法: 包含的UserRole系统中所有可能我的角色。现在我需要在我的控制器中获得一个用户注册的所有角色的数组,并将其传递给我,以便我可以知道不显示用户所在的可用角色框中的角色已经注册。
我该怎么做?
我看到两个选项:
一些如何使用LINQ语句来尝试和一气呵成, 或 获取数据传递经过的角色的完整模型,并和角色的用户被注册的阵列然后我能够在视图中显示或者等等?
相关的usermodel AUX类:
public class UsersModel : DbContext
{
public UsersModel()
: base("name=UsersConnection")
{}
public DbSet<UserProfile> UserProfiles { get; set; }
public DbSet<Roles> UserRoles { get; set; }
public DbSet<UsersInRoles> UsersInUserRoles { get; set; }
}
和
public class UsersInRolesViewModel
{
public IList<UserProfile> UserProfiles { get; set; }
public IList<Roles> UserRoles { get; set; }
public IList<ut_GMUTempData> GMUTempData { get; set; }
}
我需要使用第二个选项,但使用用户ID而不是用户名作为用户id是主键。 – Zapnologica
我更新了我的答案以满足您的需求。 – AminSaghi