2012-08-25 23 views
0

我已经创建了一个模型UserModel,它为每个用户保存MembershipUserstring[] Roles。在我的控制器中,我试图将IEnumerable<UserModel>返回给视图,但遇到问题。用MembershipUser和Roles填充模型

无法将源类型 '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); 
} 

回答

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); 
}