Поскольку в asp.net Core 2.2 нет ответов о решении, я хотел бы поделиться той же ошибкой, с которой я сталкиваюсь в asp.net Core 2.2
Во-первых, вот еще одно решение для той же ошибки в asp.net core 2.1 https://github.com/aspnet/AspNetCore.Docs/issues/8683
И благодаря идее автора я встречаю проблему, когда следую официальномуруководство по asp.net core 2.2 (адрес здесь: MicrosoftDocs для asp.net core 2.2 ).Когда я заканчиваю шаг, который он говорит, и пытаюсь запустить проект, он выдает исключение «Store не реализует IUserRoleStore»
, и проблема в том, что на самом деле это пример для asp.net core 2.1 (И я сильно сомневаюсь, почему Microsoft предоставит пользователям документы, а не примеры кодов, что, вероятно, не имеет смысла)
И вы найдете это в Области /Identity / Data / IdentityHostingStartup.cs IdentityHostingStartup :: Configure метод у вас есть следующие коды:
services.AddDefaultIdentity<IdentityUser>().AddEntityFrameworkStores<ApplicationDbContext>();
, который совпадает с кодом, который вы должны добавить в / Program.cs ConfigureService как шаг: Добавьте службы ролей в Identity в упомянутых документах:
services.AddDefaultIdentity<IdentityUser>().AddRoles<IdentityRole>().AddEntityFrameworkStores<ApplicationDbContext>();
, поэтому, если вы столкнетесь с той же проблемой в ядре asp.net 2.2, альтернативное решение:
- В соответствии с документами в asp.net 2.2
- Если вы встречаетесь с этой главой: Добавьте службы ролей в Identity , просто игнорируйте официальные документыи сделай это:
заменить строку
services.AddDefaultIdentity<IdentityUser>().AddEntityFrameworkStores<ApplicationDbContext>();
на
services.AddDefaultIdentity<IdentityUser>().AddRoles<IdentityRole>().AddEntityFrameworkStores<ApplicationDbContext>();
в Области / Identity / Data / IdentityHostingStartup.cs IdentityHostingStartup :: Configure , но методне добавлять его в program.cs (файл не может быть удален в ядре asp.net 2.2)
Проект, который я использую Asp.net, будет обновлен позже в моих репозиториях: UWPHelper Удачи:)