我创建了一个模型UserModel
,为每个用户保留MembershipUser
和string[] Roles
。在我的控制器中,我试图将IEnumerable<UserModel>
返回到视图但遇到问题。
无法将源类型“
IEnumerable<{user:MembershipUser, roles:string[]}>
”转换为目标类型“IEnumerable<UserModel>
”
我的模特
public class UserModel {
public MembershipUser user { get; set; }
public string[] roles { get; set; }
}
在我的控制器中
public ActionResult Users() {
IEnumerable<UserModel> model = from MembershipUser u in Membership.GetAllUsers()
select new {user = u, roles = Roles.GetRolesForUser(u.UserName)};
return View(model);
}
答案 0 :(得分:4)
当我认为您需要UserModel
时,您正在选择匿名类型。
public ActionResult Users() {
IEnumerable<UserModel> model = from MembershipUser u in Membership.GetAllUsers()
select new UserModel {user = u, roles = Roles.GetRolesForUser(u.UserName)};
return View(model);
}