Код: Выделить всё
public class AppUser : IdentityUser {
public string FirstName { get; set; }
public string LastName { get; set; }
public virtual List UserRoles { get; set; } = new List();
}
public class AppRole : IdentityRole {
public virtual List UserRoles { get; set; } = new List();
}
public class AppUserRole : IdentityUserRole {
public virtual AppUser User { get; set; }
public virtual AppRole Role { get; set; }
}
Код: Выделить всё
public async Task GetAllWithRoles()
{
return await _dbSet
.AsNoTracking()
.Include(u => u.UserRoles)
.ThenInclude(ur => ur.Role)
.ToListAsync();
}
Код: Выделить всё
[
{
"firstName": "XXXX",
"lastName": "YYYYY",
"userRoles": [
{
"role": {
"userRoles": [],
"id": 1,
"name": "xxx",
"normalizedName": "xxxx",
"concurrencyStamp": "1617fe40-77e2-46cb-9c1c-df597d09775c"
},
"userId": 1,
"roleId": 1
}
]
}
]
Код: Выделить всё
[
{
"firstName": "Alex",
"lastName": "Florin",
"RoleName": "Role1",
},
{
"firstName": "Alex",
"lastName": "Florin",
"RoleName": "Role2",
},
{
"firstName": "Jon",
"lastName": "Smith",
"RoleName": "Role1",
},
]
Automapper — еще один вариант, поскольку я использую его для создания моделей представления для моих более простых объектов, но я не понимаю, как настроить его для выравнивания отношений «многие ко многим».
Подробнее здесь: https://stackoverflow.com/questions/495 ... using-linq
Мобильная версия