Я пытаюсь понять vNext.
Я написал пользовательские UserStore, который работает с MongoDB и реализует эти интерфейсы:
vNext. AspNet.Identity и пользовательский UserStore. Исключенное пользователем хранилище
public class UserStore : IUserStore<ApplicationUser>, IUserPasswordStore<ApplicationUser>, IUserSecurityStampStore<ApplicationUser>,
IUserLoginStore<ApplicationUser>, IUserClaimStore<ApplicationUser>, IUserEmailStore<ApplicationUser>, IUserRoleStore<ApplicationUser>,
IUserTwoFactorStore<ApplicationUser>
В Startup.cs добавил:
app.UseServices(services =>
{
services.AddIdentity<ApplicationUser>()
.AddUserStore(() => { return new UserStore(); })
.AddUserManager<UserManager<ApplicationUser>>()
.AddHttpSignIn();
services.AddMvc();
});
Тогда пытались использовать без изменений AccountController из шаблона Visual Studio и есть проблемы ,
При входе я получаю ObjectDisposedException в UserStore.FindByNameAsync() - что-то называется UserStore.Dispose().
В коде UserManager на github.com/aspnet Store.Dispose() вызывается только в UserManager.Dispose().
Я могу просто игнорировать вызовы Dispose и все работает нормально, но это нехорошо.
Так у меня нет идей, что мне делать
P.S. Вопрос: что (и почему) может вызвать UserStore.Dispose()?
UserManager Я получил от параметров конструктора AccountController (UserManager, SignInManager). –