Jak przenieść MVC 5 IdentityModels.cs do osobnego zespołu

Zastanawiam się, czy ktoś wpadł na problem, który próbuję przenieśćApplicationUser do projektu Modele (gdzie znajdują się wszystkie inne modele, w tym te związane z tabelą Użytkownicy).

Moje testowe rozwiązanie MVC 5 składa się z projektu internetowego i dwóch bibliotek klasowych: jednej dla warstwy dostępu do danych (DAL) i drugiej dla modeli. We wszystkich trzech projektach odwołuję się do AspNet.Identity.EntityFramework. W moim modelu DAL klasy I implement Repository i UnitOfWork. UnitOfWork rozszerza sięIdentityDbContext<ApplicationUser>. ApplicationUser: IdentityUser znajduje się w bibliotece klasy modeli.

W moim projekcie internetowym UnitOfWork tworzy instancję przy użyciu Autofac DI. Dla zwykłych kontrolerów zdefiniowałem klasę bazową, która dziedziczy z kontrolera i pobiera IUnitOfWork jako parametr w konstruktorze. Wszystkie kontrolery dziedziczą po moim niestandardowym kontrolerze bazowym. Wystąpił problem zAccountController. Ma dwa konstruktory: jeden bez parametrów, który wydaje się tworzyć instancjęApplicationDbContext, drugi przyjmuje UserManager jako parametr.

Konstruktor bez parametrów daje mi najwięcej smutku. Próbowałem wielu rzeczy: zrobićaccountcontroller dziedziczę po moim niestandardowym kontrolerze bazowym, a następnie spróbuj odziedziczyć go z klasy Controller. W najlepszym razie udaje mi się skompilować moje rozwiązanie, ale kiedy testuję aplikację i wypełniam użytkownika, formularz rejestracyjny otrzymuję komunikat „Obiekt nie jest instancjonowany”. Kiedy debuguję, widzę, że drugi konstruktor wAccountController zostaje wezwany, aleUserManager jest tam null.

Jakieś pomysły? Naprawdę doceniłbym czyjąś dzielną postawę.

questionAnswers(1)

yourAnswerToTheQuestion