Поэтому я включил регистрацию 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?

Ответы на вопрос(2)

Ваш ответ на вопрос