【问题标题】:Get List of custom user class inherit from ApplicationUser in Asp.Net MVC获取从 Asp.Net MVC 中的 ApplicationUser 继承的自定义用户类列表
【发布时间】:2017-03-13 17:03:12
【问题描述】:

我创建了一个继承自 ApplicationUser 的类,如下所示:

public class Company : ApplicationUser
{
    public string CompanyName { get; set; }
    public String Boss { get; set; }
    public string Slogan{ get; set; }
}

EF 将向dbo.AspNetUsers 添加一个鉴别器列

我从Company 类中得到一个属性,如下所示:

Company cm = (Company)db.Users.Find(id);

这很好,但我怎样才能获得Company 用户的列表(即Discriminator == "Company" 的位置)?

【问题讨论】:

    标签: c# asp.net-mvc entity-framework asp.net-identity


    【解决方案1】:

    您需要使用OfType<...>() 扩展:

    var companyUsers = db.Users.OfType<Company>();
    

    这样做会运行类似这样的 SQL:

    SELECT
        [Extent1].Id,
        [Extent1].Column2.
        --etc
    FROM [dbo].[AspNetUsers] AS [Extent1]
    WHERE [Extent1].[Discriminator] = Company'
    

    【讨论】:

    • 不要忘记您可以投票/接受对您有帮助的答案。
    • 我尝试投票但给我看这条消息:感谢您的反馈!声望低于 15 人的投票会被记录,但不会更改公开显示的帖子分数
    • 哈哈没关系,我只是给你一些一般性的建议。不过,您应该能够接受答案,您也将获得 2 个代表接受。
    猜你喜欢
    • 2018-10-30
    • 2017-07-05
    • 2016-12-15
    • 1970-01-01
    • 1970-01-01
    • 2023-03-16
    • 2010-11-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多