Ну, указанная ошибка c, которую вы получаете, просто потому, что UserManager<TUser>
не зарегистрирован в коллекции сервисов. Чтобы ввести что-нибудь , вы должны сначала зарегистрировать его. В вашем приложении, ориентированном на пользователя, это делает services.AddIdentity()
. Однако это намного больше, чем просто регистрация UserManager<TUser>
, поэтому вам не нужно просто запускать и добавлять ту же команду во второе приложение.
Вы можете добавить регистрацию для него специально:
services.AddScoped<UserManager<ApplicationUser>>();
Однако на самом деле он имеет массу зависимостей, каждая из которых также должна быть зарегистрирована. Если вы посмотрите на конструктор , то есть семь сервисов, не зарегистрированных прямо из коробки, многие из которых имеют свои собственные деревья зависимостей. Короче говоря, это боль. Здесь также есть вопрос разделения интересов. Для этого потребуется добавить весь слой данных из другого приложения.
Лучше всего просто выставить API в приложении Identity (и, конечно, заблокировать). Таким образом, все логи c работы с пользователями остаются с остальными логи c. Приложение администрирования может затем вызывать API для добавления, обновления, удаления и т. Д. c. пользователи не должны знать, как это происходит на самом деле.