Come posso ottenere un elenco di utenti incluso il nome del ruolo per utente? La mia app ha le tabelle predefinite di un progetto MVC.Identità ASP.net 2.1 Ottieni tutti gli utenti con i ruoli
sono in grado di recuperare tutti gli utenti che utilizzano Identity 2.1 in questo modo:
Modello
public class GetVendorViewModel
{
public IList<ApplicationUser> Vendors { get; set; }
}
controller
public ActionResult Index()
{
var manager = new UserManager<ApplicationUser>(new UserStore<ApplicationUser>(new ApplicationDbContext()));
var roleStore = new RoleStore<IdentityRole>(ac);
var roleManager = new RoleManager<IdentityRole>(roleStore);
var vendor = roleManager.FindByName("Vendor").Users;
var model = new GetVendorViewModel { Vendors = vendor };
return View("~/Views/User/Administrator/Vendor/Index.cshtml", model);
}
in questo momento sta tornando questo:
[
{
UserId: "4f9ed316-a852-45a9-93a8-a337a37b1c74",
RoleId: "a17bb59c-285a-43f9-b5ad-65f46f94bb4f"
}
]
Questo è corretto, ma ho bisogno di visualizzare le informazioni sull'utente, quali il nome, e-mail, nome utente ecc
Vorrei restituire un oggetto JSON come questo:
[
{
UserId: "4f9ed316-a852-45a9-93a8-a337a37b1c74",
RoleId: "a17bb59c-285a-43f9-b5ad-65f46f94bb4f"
RoleName: "Administrator"
User: {
name:"Joe Doe",
email:"[email protected]",
...
}
},
{
...
}
]
RoleName è nella tabella AspNetRoles.
UserId e RoleId sono query da AspNetUserRoles.
Eventuali indizi?
DavidH, è necessario fornire parte del codice dell'app per ricevere una risposta adeguata. – carlodurso