ASP.NET MVC 5 IdentityUser相关实体
本文关键字:实体 IdentityUser NET MVC ASP | 更新日期: 2023-09-27 18:11:07
我有以下的ApplicationUser实现:
public class ApplicationUser : IdentityUser
{
public virtual Establishment Establishment { get; set; }
}
和建立实施:
public class Establishment
{
[Key]
public int ID { get; set; }
public string Name { get; set; }
public virtual ICollection<ApplicationUser> Users { get; set; }
public virtual ICollection<Menu> Menus { get; set; }
public virtual ICollection<Category> Categories { get; set; }
}
一个机构有许多用户,但一个用户只有一个机构。我想通过当前用户id获得当前建立:
var currentUserEstablishmentId = userManager
.FindById(User.Identity.GetUserId()).Establishment.ID;
var establishment = db.Establishments
.Single(e => e.ID == currentUserEstablishmentId);
但是它给了我一个错误。设置属性Establishment of the currentUser为空。
如何获取当前用户的当前建立地址?
谢谢你,问候。
您是否尝试过在ApplicationUser上添加establishmentd ?
public class ApplicationUser : IdentityUser
{
public virtual int EstablishmentID { get; set; }
public virtual Establishment Establishment { get; set; }
}
那么你的查询变成:
var currentUser = userManager
.FindById(User.Identity.GetUserId());
var establishment = db.Establishments
.Single(e => e.ID == currentUser.EstablishmentID);