У меня есть приложение в Asp. NET Core 3.1 MVC с EF Core и Identity.
У меня есть две таблицы Calls
и AspNetUsers
. AspNetUsers
имеет много Calls
, а один Call
имеет один AspNetUsers
.
Структура таблицы Calls
в порядке, я думаю. Но теперь мне нужно получить Calls
от AspNetUsers
.
В CallsController
Я пытаюсь: IList<Call> calls = this.User.Calls;
, но безуспешно.
Я пытался:
IList<Call> calls = this._context.Calls.Where(x => x.UserId == this._userManager.GetUserId(this.User)).ToList();
У меня есть успех. Но правильно ли это?
Итак, в приложении у меня есть классы идентичности и ApplicationUser
, например:
public class ApplicationUser : IdentityUser
{
public virtual IList<Call> Calls { get; set; }
}
И в Startup
классе в методе ConfigureServices
:
services.AddDefaultIdentity<ApplicationUser>(options =>
options.SignIn.RequireConfirmedAccount = true)
.AddEntityFrameworkStores<ApplicationDbContext>();
Итак, как лучше получать звонки от AspNetUsers? Спасибо!