saya mendapatkan pengecualian berikut ketika mencoba mengkonfigurasi Unity menggunakan Unity.Mvc5 dengan aplikasi MVC 5 menggunakan Identity 2.0 dan boilerplate Sampel Identity 2.0. saya telah membaca SO Konfigurasi Unity DI untuk Identitas ASP.NET dan saya masih belum jelas tentang apa yang saya lewatkan. Apa yang saya lakukan salah di sini?
Tipe saat ini, System.Data.Common.DbConnection, adalah kelas abstrak dan tidak dapat dibuat. Apakah Anda melewatkan pemetaan tipe?
[ResolutionFailedException: Resolusi ketergantungan gagal, ketik = "myApp.Web.Controllers.AccountController", name = "(none)". Pengecualian terjadi saat: saat menyelesaikan.
Pengecualiannya adalah: InvalidOperationException - Tipe saat ini, System.Data.Common.DbConnection, adalah kelas abstrak dan tidak dapat dibuat. Apakah Anda melewatkan pemetaan tipe?
Pada saat pengecualian, wadahnya adalah:
Menyelesaikan myApp.Web.Controllers.AccountController,(none) Menyelesaikan parameter "userManager" konstruktor myApp.Web.Controllers.AccountController(myApp.Web.Models.ApplicationUserManager userManager) Menyelesaikan myApp.Web.Models.ApplicationUserManager,(none) Menyelesaikan parameter "penyimpanan" konstruktor myApp.Web.Models.ApplicationUserManager(Microsoft.AspNet.Identity.IUserStore1[[myApp.Web.DAL.Profiles.ApplicationUser, myApp.Web, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]] store)
Resolving Microsoft.AspNet.Identity.EntityFramework.UserStore
1[myApp.Web.DAL.Profiles.ApplicationUser],(none) (dipetakan dari Microsoft.AspNet.Identity.IUserStore1[myApp.Web.DAL.Profiles.ApplicationUser], (none))
Resolving parameter "context" of constructor Microsoft.AspNet.Identity.EntityFramework.UserStore
1[[myApp.Web .DAL.Profiles.ApplicationUser, myApp.Web, Versi=1.0.0.0, Budaya=netral, PublicKeyToken=null]](Konteks System.Data.Entity.DbContext) Menyelesaikan System.Data.Entity.DbContext,(tidak ada) Parameter penyelesaian "ExistingConnection" dari konstruktor System.Data.Entity.DbContext(System.Data.Common.DbConnection eksistingConnection, System.Data.Entity.Infrastructure.DbCompiledModel model, System.Boolean konteksOwnsConnection) Menyelesaikan System.Data.Common.DbConnection,(tidak ada)
pengontrol akun karena saya telah memodifikasinya
public AccountController(ApplicationUserManager userManager)
{
_userManager = userManager;
}
private ApplicationUserManager _userManager;
kontainer yang telah saya daftarkan
container.RegisterType<ApplicationUserManager>(new HierarchicalLifetimeManager());
container.RegisterType<IUserStore<ApplicationUser>, UserStore<ApplicationUser>>(new HierarchicalLifetimeManager());