将相关实体获取到ASP.NET身份用户

时间:2018-07-12 01:02:50

标签: asp.net

使用asp.net身份,我正在尝试确定我的AppUser是否附加了任何业务(使用一对多关系)

在数据库中,我有一个AppUser并连接了许多Businesses,但是当我运行查询以检索我的用户时,Businesses总是为空。

如果我通过上下文和Include()业务手动调用AspNetUsers表,那么它们会显示正常,但是我认为virtual关键字会检索属性,而无论如何?

这是我的用户类别:

public class AppUser : IdentityUser
{
    public AppUser() {
        Businesses = new List<Business>();
    }

    public bool HasABusinessProfile
    {
        get
        {
            return Businesses.Any();
        }
    }

    public virtual ICollection<Business> Businesses { get; set; }
}

登录时:

public async Task<IActionResult> Post([FromBody]UserLoginViewModel credentials)
{
    var user = await GetClaimsIdentity(credentials.UserName, credentials.Password);

问题在于,此时代码中的user.HasABusinessProfile始终为false。

0 个答案:

没有答案