我如何从dbo.AspNetUsers表中读取?

问题描述 投票:0回答:1

我想从身份表dbo.AspNetUsers中检索数据,但是我还没有弄清楚如何查询它。

这是我的数据库上下文:

public class ProjectsDbContext : IdentityDbContext<IdentityUser>
{
    public ProjectsDbContext(DbContextOptions<ProjectsDbContext> options) : base(options) { }

    public DbSet<Project> Projects { get; set; }

    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
        if (modelBuilder == null)
        {
            throw new NullReferenceException();
        }

        base.OnModelCreating(modelBuilder);

        modelBuilder.Entity<Project>()
            .HasMany(c => c.ChildProjects)
            .WithOne(p => p.ParentProject)
            .HasForeignKey(p => p.ParentProjectId);
    }
}

这是我的User级:

public class User : IdentityUser
{
    public string FirstName { get; set; }
    public string LastName { get; set; }
}

这是我的查询,不起作用:

List<User> projectOwners = await db.Users.ToListAsync();

我收到的错误消息是:

无法将类型'System.Collections.Generic.List 隐式转换为'System.Collections.Generic.List '

如果在查询中将List<User>替换为var,该错误就会消失,但是我得到的集合不包含我自己的User类中的任何属性。

我如何访问AspNetUsers,包括在User中定义的我自己的额外属性?

c# entity-framework-core asp.net-core-mvc asp.net-core-identity
1个回答
0
投票

假设您正在按照标准样板或多或少地设置项目,我相信您可以像这样强制转换身份用户的替代类型:

Startup.cs

© www.soinside.com 2019 - 2024. All rights reserved.