ASP.NET MVC 5 身份 userManager.IsInRole

2023-12-07

以下代码不起作用,我无法解释为什么......我的用户管理器造成了很大的困扰,因为它创建用户和角色很好,但是当我运行此代码时 userManager.IsInRole 总是返回 false,所以第二个当我运行我的种子时,我遇到了错误,因为它试图创建记录,尽管它已经存在!

请注意,当我针对迁移项目运行 update-database 时会发生这种情况,事实上这是一个非 ASP 项目导致问题,如果是的话,为什么?不应该抛出错误。

这是我使用 Identity 的第一个项目,虽然它工作时看起来不错,但可用的最新高质量文档很少,所以如果有人有任何资源,我将不胜感激。

    public void Run(BlogContext blogContext)
    {
        var userStore = new UserStore<User>((BlogContext) blogContext);
        var userManager = new UserManager<User>(userStore);

        var userRoles = new List<UserRole>()
        {
            new UserRole() {Username = "[email protected]", Role = "SysAdmin"},
            new UserRole() {Username = "[email protected]", Role = "Admin"},
            new UserRole() {Username = "[email protected]", Role = "Author"}
        };

        foreach (var userRole in userRoles)
        {
            var userId = userManager.FindByName(userRole.Username).Id;

            if (!userManager.IsInRole(userId, userRole.Role))
                userManager.AddToRole(userId, userRole.Role);
        }


        blogContext.SaveChanges();
    }

所以我会亲自回答这个问题,以挽救任何人我因此而遭受的痛苦。

发生这种情况的原因是我禁用了延迟加载,我已在我的迁移项目中启用了此功能,如下所示。

protected override void Seed(BlogContext blogContext)
    {
        AutomaticMigrationsEnabled = true;
        blogContext.Configuration.LazyLoadingEnabled = true;
        //Add seed classes here!    
    }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ASP.NET MVC 5 身份 userManager.IsInRole 的相关文章

  • 现代 C++ 编译器是否能够在某些情况下避免调用 const 函数两次?

    例如 如果我有以下代码 class SomeDataProcessor public bool calc const SomeData d1 const SomeData d2 const private Some non mutable
  • 从复选框列表中选择循环生成的复选框中的一个复选框

    抱歉我的英语不好 在我的 ASP NET 网站上 我从 SQL 表导入软件列表 看起来像这样 但实际上要长得多 Microsoft Application Error Reporting br br Microsoft Applicatio
  • java中如何重新初始化int数组

    class PassingRefByVal static void Change int pArray pArray 0 888 This change affects the original element pArray new int
  • 无法注册时间触发的后台任务

    对于 Windows 8 应用程序 在 C Xaml 中 我尝试注册后台任务 很难说 但我想我的后台任务已正确注册 但是当我单击调试位置工具栏上的后台任务名称时 我的应用程序停止工作 没有任何消息 我查看了事件查看器上的日志 得到 具有入口
  • 处理右值时的 insert 与 emplace

    std string myString std unordered set
  • Eigen 和 OpenMP:由于错误共享和线程开销而没有并行化

    系统规格 Intel Xeon E7 v3 处理器 4 插槽 16 核 插槽 2 线程 核心 Eigen 系列和 C 的使用 以下是代码片段的串行实现 Eigen VectorXd get Row const int j const int
  • 不同 C++ 文件中的相同类名

    如果两个 C 文件具有相同名称的类的不同定义 那么当它们被编译和链接时 即使没有警告也会抛出一些东西 例如 a cc class Student public std string foo return A void foo a Stude
  • 什么是空终止字符串?

    它与什么不同标准 字符串 http www cplusplus com reference string string 字符串 实际上只是一个数组chars 空终止字符串是指其中包含空字符的字符串 0 标记字符串的结尾 不一定是数组的结尾
  • 如何使用 ASP.NET Core 获取其他用户的声明

    我仍在学习 ASP NET Core 的身份 我正在进行基于声明的令牌授权 大多数示例都是关于 当前 登录用户的 就我而言 我的 RPC 服务正在接收身份数据库中某个用户的用户名和密码 我需要 验证是否存在具有此类凭据的用户 获取该用户的所
  • 获取没有显式特征的整数模板参数的有符号/无符号变体

    我希望定义一个模板类 其模板参数始终是整数类型 该类将包含两个成员 其中之一是类型T 另一个作为类型的无符号变体T 即如果T int then T Unsigned unsigned int 我的第一直觉是这样做 template
  • 在 VS 中运行时如何查看 C# 控制台程序的输出?

    我刚刚编写了一个名为 helloworld 的聪明程序 它是一个 C NET 4 5 控制台应用程序 在扭曲的嵌套逻辑迷宫深处 使用了 Console WriteLine 当我在命令行运行它时 它会运行并且我会看到输出 我可以执行其他命令并
  • 如何使用 x64 运行 cl?

    我遇到了和这里同样的问题致命错误 C1034 windows h 未设置包含路径 https stackoverflow com questions 931652 fatal error c1034 windows h no include
  • 在 .NET MAUI 中实现 TouchTracking

    我一直致力于将我们的应用程序从 Xamarin Forms 迁移到 NET MAUI 我们的应用程序几乎没有绘图功能 用户可以用手指进行绘图 我们用了TouchTrackingXamarin Forms 中的 nuget 包 但与 NET
  • 模板外部链接?谁能解释一下吗?

    模板名称具有链接 3 5 非成员函数模板可以有内部链接 任何其他模板名称应具有外部链接 从具有内部链接的模板生成的实体与在其他翻译单元中生成的所有实体不同 我知道使用关键字的外部链接 extern C EX extern C templat
  • C++ 对象用 new 创建,用 free() 销毁;这有多糟糕?

    我正在修改一个相对较大的 C 程序 不幸的是 并不总是清楚我之前的人使用的是 C 还是 C 语法 这是在一所大学的电气工程系 我们 EE 总是想用 C 来做所有事情 不幸的是 在这种情况下 人们实际上可以逃脱惩罚 但是 如果有人创建一个对象
  • 如何隐藏数据列表中的项目

    我想隐藏一个项目datalist根据某种条件起诉ItemBound how Wrap a PlaceHolder控制整个内容ItemTemplate 然后在 ItemDataBound 事件中 您可以执行以下操作 Protected Sub
  • EntityFramework 6.0.0.0 读取数据,但不插入

    我创建了一个基于服务的数据库 folderName gt Add New Item gt Data gt Service based Database文件到 WPF 应用程序中 然后我用过Database First方法并创建了Person
  • 如何在 sql azure 上运行 aspnet_regsql? [复制]

    这个问题在这里已经有答案了 可能的重复 将 ASP NET 成员资格数据库迁移到 SQL Azure https stackoverflow com questions 10140774 migrating asp net membersh
  • 正则表达式仅允许特定数字

    我正在寻找一个只允许输入特定数字的正则表达式 例如2 4 5 6 10 18 我尝试过类似的东西 2 4 5 6 10 18 我输入的任何内容都无法通过正则表达式 然后计算机用手指着我并大笑 我哪里出错了 单引号是不必要的 您正在寻找的正则
  • 是否允许全局静态标识符以单个 _ 开头?

    换句话说 可能static 文件范围 全局变量恰好以一个下划线开头 而不会产生与 C 实现发生名称冲突的可能性 https www gnu org software libc manual html node Reserved Names

随机推荐

  • Postgres:使用游标更新的令人惊讶的性能

    考虑以下两个 Python 代码示例 它们实现了相同的效果 但具有显着且令人惊讶的性能差异 import psycopg2 time conn psycopg2 connect dbname mydatabase user postgres
  • 虚函数和多态性

    假设我有这个 class A public virtual int hello A a class B public A public int hello B b bla bla 所以 A是一个抽象类 1 在B类中 我定义了一个假设覆盖A类
  • 如何在 Wix 中为 MSI 创建自定义 UI?

    我想使用 Wix 增强 MSI 的 UI 对话框 您能给我指出提供创建此类 UI 选项的最佳工具吗 另外 是否可以在 MSI 向导中显示动画 GIF 图像 您想要查看 嵌入式 UI 有时也称为 外部 UI 但是一旦您沿着这条路走下去 您就必
  • 在 PHP 中用另一个符号替换反斜杠

    一直在努力用另一个符号 例如 替换反斜杠只是为了指示反斜杠的位置 因为我无法发送诸如 C xampp etc 之类的字符串 通过 url 作为 GET 变量 所以我想我首先用另一个符号替换该字符串中的反斜杠 然后通过 url 发送 然后将它
  • powershell中哈希表的数组/对象键

    使用数组键创建哈希时 如何生成键来查找哈希值 也就是说 无需从哈希的枚举器获取它 a a 1 b 2 c c1 3 使用常规数组似乎不起作用 k1 c c1 a ContainsKey k1 false 但是 如果在创建时使用数组对象 这似
  • IE 在高度 > 4096px 时显示透明度错误?

    当我在大页面上遇到问题时 我正在开发一个带有透明背景覆盖的 JavaScript 对话框 如果页面很大 透明覆盖层将是纯色 即不再透明 我做了一些测试 发现这只发生在覆盖层高度大于 4096 像素时 嗯 可疑 那是 2 12 有人可以验证这
  • 如何在 iOS (iPhone) 中使用 opencv 比较图像

    我想在我的项目中比较 iPhone 相机拍摄的 2 张图像 我正在使用 OpenCV 来做到这一点 还有其他更好的方法吗 如果我得到 相似度 那就太好了 我使用 OpenCV 以下代码进行图像比较 void opencvImageCompa
  • 找不到源中事件 ID 的描述

    当我将日志写入 Windows 事件日志时 我收到以下事件 此消息的根本原因是什么 以及如何修复它 非常感谢 事件 ID 51001 的描述 无法找到源 RRWS 引发此问题的组件 您的本地未安装事件 计算机或安装是 已损坏 您可以安装或修
  • 在android中使用AudioRecord录制立体声

    我正在寻找有关让 audioRecord 使用顶部安装和底部安装的麦克风的明确答案 因此我没有 2 个相同的 单声道 通道 我想知道我可以事先进行哪些轮询以确保小工具能够提供良好的流 我正在开发 Galaxy Nexus 5 但无法使其正常
  • 无法编译 C++ 项目(宏“max”传递了 3 个参数,但只需要 2 个)

    抱歉使用通用标题 但我不是 C 编译方面的专业人士 而且我似乎无法在这里找到错误 我正在查看一个官方项目 所以我知道该项目实际上应该可以正常编译 事实并非如此 如果有人想自己检查代码 请执行以下操作 cvs d pserver jvtuse
  • 在每个请求上使用基于角色的自定义身份验证查询数据库的正确方法 ASP.NET MVC

    这可能是一个有点无知的问题 但我是 mvc 新手 所以我很抱歉 我研究了书呆子晚餐身份验证模型 但在我的应用程序中 我有一个复杂的基于角色的身份验证 所以我做的是这样的 void MvcApplication PostAuthenticat
  • 安装 Spark 2.4.4 后尝试运行 pyspark 时如何修复“TypeError:需要一个整数(获取类型字节)”错误

    我已经安装了 OpenJDK 13 0 1 和 python 3 8 和 Spark 2 4 4 测试安装的说明是从 Spark 安装的根目录运行 bin pyspark 我不确定我是否错过了 Spark 安装中的某个步骤 例如设置一些环境
  • 对列表进行子集化(为所有组件选择匹配值)

    我尝试以某种方式从列表中读出某些元素 这相当于df c 1 4 5 in a data frame gt obj lt list c 1 5 c 1 5 gt obj 1 1 1 2 3 4 5 2 1 1 2 3 4 5 我正在寻找这样的
  • 为什么ACTION_MEDIA_BUTTON无法处理事件?

    遵循有关如何进行的培训部分使用硬件播放控制键来控制音频播放 我创建一个监听器类 public class RemoteControlReceiver extends BroadcastReceiver Override public voi
  • CMake:对 boost 库的未定义引用

    我通过这个添加了提升 set Boost USE STATIC LIBS ON set Boost USE MULTITHREADED ON set Boost USE STATIC RUNTIME OFF find package Boo
  • 我一直搞砸 1NF

    对我来说 到目前为止我发现的关于 1NF 最容易理解的描述是 主键是唯一标识每一行的一列 或一组列 在 www phlonx com 上 据我所知 冗余意味着每个键每行的值不应超过 1 个 超过 1 的值将是 冗余的 正确的 尽管如此 我还
  • Javascript Array.sort 实现?

    JavaScript 使用哪种算法Array sort 功能使用 我知道它可以采用各种方式的参数和函数来执行不同类型的排序 我只是对普通排序使用哪种算法感兴趣 我刚刚浏览了 WebKit Chrome Safari source 根据数组的
  • Java:空间对编译有影响吗?

    我正在制作一个程序 有点像 Piglatin 其中我无意中错过了语句中的一个变量 String a R a 其实应该是String a R text a 编译器产生了一个错误 但是 当我做到了 String a R a 程序编译完成 我想知
  • 需要在导航抽屉内显示可扩展列表视图

    I am an Android Application Developer I have started working on React Native I am unable to find a way to show expandabl
  • ASP.NET MVC 5 身份 userManager.IsInRole

    以下代码不起作用 我无法解释为什么 我的用户管理器造成了很大的困扰 因为它创建用户和角色很好 但是当我运行此代码时 userManager IsInRole 总是返回 false 所以第二个当我运行我的种子时 我遇到了错误 因为它试图创建记