ASP.NET MVC 5自定义角色提供程序未返回预期值

时间:2017-03-03 05:15:29

标签: asp.net-mvc-5 roleprovider

我对这个自定义角色提供程序相当新(我认为它很好),现在我试图让用户根据他们的角色查看或访问Web应用程序的某些部分,这个角色在数据库中( admin,user和super_user)。我有一个名为UserRoleProvider的类,下面是它的一部分似乎不起作用

public override string[] GetRolesForUser(string username)
    {
        using (CADDeContext caddeContext = new CADDeContext())
        {
            int? roleId = caddeContext.SMS_Staff.First().StaffSecurity;
            string site = caddeContext.SMS_Staff.First().BranchID;

            return new string[] { roleId.ToString() };
        }
    }

这个方法不会返回数据库中的任何值,返回的内容与我在数据库中的内容完全不同,它在哪里得到所有这些值,我100%我在网络中有正确的连接字符串配置,我还用quickwatch双重检查了这个连接。下面是我期望从上下文中获取的所有字段的屏幕截图(没有值)

Expected database fields to be returned

1 个答案:

答案 0 :(得分:0)

哦,不,我无法相信我刚刚做了多大和愚蠢的错误,我的查询中没有where子句,也包含"第一个"根据我的疑问,抛弃一切,我觉得很愚蠢:(