Как выгрузить через UserManager дополнительные данные о пользователе, которые хранятся в отдельной таблице, которая связана по принципу один-к-одному с главной таблицей (AspNetUsers)
Теперь по подробнее:
в классе class
ApplicationUser : IdentityUser
добавлено свойство
public UserProfile UserProfile { get; set; }
а вот и сама модель:
public class UserProfile
{
[Key,ForeignKey("ApplicationUser")]
public string ID { get; set; }
public ApplicationUser ApplicationUser { get; set; }
public DateTime? Birthday { get; set; }
}
При регистрации нового пользователя производится следующее:
newUser.UserProfile = new UserProfile {Birthday=birthday,ID = newUser.Id};
UserManager.Update(newUser);
Всё это дело успешно выполняется и сохраняется в бд.
Но когда пытаюсь извлечь данные профиля пользователя через UserManager
ApplicationUser user = await UserManager.FindByNameAsync(userName)
user.UserProfile всегда = null
Т.е FindByUsername извлекает только основные данные, без тех, что находятся в отдельных таблицах.
Как можно извлечь через UserManager полную информацию, к-ая включает в себя данные в связанных таблицах?
чтоб например был такой же результат
сontext.Users.Include(Users => Users.UserProfile).Single(u => u.UserName==User.Identity.Name);
---
И ещё: я так понял, чтобы извлекать данные из базы асинхронно, нужно каждый запрос упаковывать в метод типа Task GetSomethingAsync() ?
не уж то нет ничего проще?