Я изучил новые функции новой версии ASP.NET Identity 2.1, и одним из ее усовершенствований являются новые функции IoC, интегрированные в промежуточное ПО OWIN. Одно из предложений, которое я посмотрел в примерах, это следующее:
app.CreatePerOwinContext<ApplicationUserManager>(ApplicationUserManager.Create);
Это предложение получает делегат функции, который возвращает новый экземпляр реализации менеджера, представленный на примерах:
public static ApplicationUserManager Create(IdentityFactoryOptions<ApplicationUserManager> options,
IOwinContext context)
{
var manager = new ApplicationUserManager(new UserStore<ApplicationUser>(context.Get<ApplicationDbContext>()));
Мне лично не нравится эта реализация, потому что я не могу использовать контейнер для ввода любой зависимости, которую я хочу для этих менеджеров.
Также есть "IdentityFactoryOptions" и "IOwinContext", которые "магически" вводятся в функцию, которую Im не удалось вытащить в мой контейнер IoC.
Есть ли у кого-нибудь лучшее обходное решение для этой реализации?