I have the following query but when I run it it gaves me error, no data. I have entry in all tables related to user and Roles. What am I doing wrong?
- var role = await (from a in _context.UsersData.Where(a => a.Id == id)
- join b in _context.AppIdentityRoles on a.Id equals b.UserId
- join c in _context.UsersRole on b.RoleId equals c.Id
- select new UserDataRole
- {
- UserId = a.Id,
- UserName = a.UserName,
- RoleId = c.Id,
- RoleName = c.Name
- }).ToListAsync();
Data model
- public class UserDataClass : IdentityUser
- {
- public string UserStatus { get; set; }
- public virtual ICollection<AppIdentityRole> AppUserRoles { get; set; }
- }
-
- public class UserRoleClass : IdentityRole
- {
- public virtual ICollection<AppIdentityRole> AppUserRoles { get; set; }
- }
-
- public class AppIdentityRole : IdentityUserRole<string>
- {
- public virtual UserDataClass User { get; set; }
- public virtual UserRoleClass Role { get; set; }
- }
-
- public class UserDataRole
- {
- public string UserId { get; set; }
- public string UserName { get; set; }
- public string RoleId { get; set; }
- public string RoleName { get; set; }
- }