Поэтому я включил регистрацию Action setupAction. (Это аналогично тому, как Microsoft делает это в AddIdentity внутри IdentityServiceCollectionExtension)
евожу приложение ASP.NET Core 1.0 в ASP.NET Core 2.0.
В моем стартапе я настраиваю две личности:
services.AddIdentity<IdentityUser, IdentityRole>(configureIdentity)
.AddDefaultTokenProviders()
.AddUserStore<IdentityUserStore<IdentityUser>>()
.AddRoleStore<IdentityRoleStore<IdentityRole>>();
services.AddIdentity<Customer, CustomerRole>(configureIdentity)
.AddDefaultTokenProviders()
.AddErrorDescriber<CustomerIdentityErrorDescriber>()
.AddUserStore<CustomerStore<Customer>>()
.AddRoleStore<CustomerRoleStore<CustomerRole>>();
Это хорошо работало в ASP.NET Core 1.0, но не с ошибкой:System.InvalidOperationException: «Схема уже существует: Identity.Application» в ASP.NET Core 2.0.
В ASP.NET Core 2.0, если я удалю один из вызововAddIdentity
ошибка уходит. Как перенести мой код, чтобы я мог использовать два разных типа идентификации пользователя и роль в моем приложении? Или я просто сделал фундаментальную ошибку в понимании того, как все работает, когда я написал это в ASP.NET Core 1.0?