如何访问由ASP身份生成的表AspNetUserRoles?

问题描述

我正在编码一个使用asp.net上的Identity功能的API,现在我正在尝试创建一种方法,该方法返回存储在存储库中的所有对(user.idrole.id)表AspNetUserRoles分配角色给用户时。

一种解决方案是获取用户的完整列表,并在双循环中找到该用户的每个角色,但是数据过多,这对我而言并不是最佳选择。对我来说,理想的解决方案是直接访问该表,该表恰好包含我要查找的内容

感谢您的帮助!

解决方法

您将必须明确创建类模型和关系,如以下文档中所述: https://docs.microsoft.com/en-us/aspnet/core/security/authentication/customize-identity-model?view=aspnetcore-3.1#add-user-and-role-navigation-properties

本文档希望您至少创建ApplicationUser,ApplicationRole和ApplicationUserRole类模型。同样,您将必须相应地更新DBContext才能正确使用您创建的新模型。型号名称可以更改。但是,无论如何,这不应更改任何数据库架构,也不需要任何EF迁移。

最后,