您好我一直在試圖登錄默認IUserStore即與SimpleInjector註冊IUserStore用簡單的噴油器3.1.2
public class ApplicationUserManager : UserManager<ApplicationUser, int>
{
public ApplicationUserManager(IUserStore<ApplicationUser, int> store)
: base(store)
{
}
的預製Identity類ApplicationUserManager我有看起來像App_Start文件夾中的文件SimpleInjectorInitializer這樣的:
public static class SimpleInjectorInitializer
{
public static void RegisterDependencies(Container container)
{
container.Register<ICatalogRepository, CatalogRepository>();
container.Register<IUserRepository, UserRepository>();
container.Register<ICatalogService, CatalogService>();
container.Register<IUserService, UserService>();
container.Register<IAdminService, AdminService>();
container.Register<AccountController>();
container.Register<ApplicationUserManager>();
//container.Register<CustomUserStore>();
//container.RegisterCollection(typeof(IUserStore<>), new[] { typeof(ApplicationUser) });
//container.Register<IUserStore<>, store>();
//container.RegisterPerWebRequest<IUserStore<ApplicationUser>>(() => new UserStore<ApplicationUser>(container.GetInstance<ApplicationDbContext>()));
container.Verify();
}
}
正如你可以看到我已經嘗試了幾次通過尋找類似的堆棧溢出的問題得到它的工作,但它不是沒有改變的結果或給定一個語法錯誤。
點擊應用主頁按鈕的跡象目前的情況下,將引發此錯誤:
型ApplicationUserManager的構造函數中包含名爲「店」和被 未註冊類型IUserStore參數 。請確保IUserStore已註冊 ,或者更改ApplicationUserManager的構造函數。
如果下面的兩行寄存器ApplicationUserManager被未註釋然後將引發此錯誤:
類型的異常「System.ArgumentException」發生在 SimpleInjector.dll但在用戶代碼
沒有處理附加信息:提供的類型ApplicationUser不是 實現IUserStore。
任何幫助,將不勝感激。
請檢查這個鏈接,它有很好的解決方案。 http://stackoverflow.com/questions/30602687/simple-injector-identity-usermanagerappuser-int32-registration-error – Husein
我試圖使用已發佈的鏈接中的示例,他們似乎適用於不同版本的簡單注射器或他們不工作與我的解決方案。 – PYROv1