MvcMembership で動作させるための適切な Unity 構成を見つけることができません。
この時点で、次のエラー メッセージが表示されます。
ブール型は構築できません。この値を提供するようにコンテナーを構成する必要があります。
依存関係を登録するための私のコードは次のとおりです。
container.RegisterInstance<MembershipProvider>(Membership.Provider);
container.RegisterType<IMembershipSettings,AspNetMembershipProviderSettingsWrapper>();
container.RegisterType<IUserService, AspNetMembershipProviderWrapper>();
container.RegisterType<IPasswordService, AspNetMembershipProviderWrapper>();
container.RegisterType<IRolesService, AspNetRoleProviderWrapper>();
container.RegisterType<ISmtpClient, SmtpClientProxy>();
container.RegisterType<IRegistrationSettings, RegistrationSettings>();
そして、ここに私のスタックトレースがあります:
[InvalidOperationException: Boolean 型を構築できません。この値を提供するようにコンテナーを構成する必要があります。 StrategyChain.ExecuteBuildUp(IBuilderContext コンテキスト) +434 Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlanCreatorPolicy.CreatePlan(IBuilderContext コンテキスト、NamedTypeBuildKey buildKey) +400 Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(IBuilderContext コンテキスト) +222 Microsoft.Practices.ObjectBuilder2.StrategyChain. ExecuteBuildUp(IBuilderContext コンテキスト) +434 Microsoft.Practices.
[ResolutionFailedException: 依存関係の解決に失敗しました。タイプ = "MyProject.Web.Areas.MvcMembership.Controllers.UserAdministrationController"、名前 = "(none)"。例外が発生しました: 解決中。
例外は次のとおりです。 InvalidOperationException - Boolean 型を構築できません。この値を提供するようにコンテナーを構成する必要があります。
例外発生時のコンテナは次のとおりでした。
MyProject.Web.Areas.MvcMembership.Controllers.UserAdministrationController の解決中、(none) コンストラクター MyProject.Web.Areas.MvcMembership.Controllers.UserAdministrationController(MvcMembership.Settings.IMembershipSettings membersSettings、MvcMembership.IUserService userService、MvcMembership.IPasswordService のパラメーター「membershipSettings」の解決中passwordService, MvcMembership.IRolesService rolesService, MvcMembership.ISmtpClient smtpClient) MvcMembership.Settings.AspNetMembershipProviderSettingsWrapper,(none) の解決 (MvcMembership.Settings.IMembershipSettings からマッピング, (none)) コンストラクター MvcMembership.Settings.AspNetMembershipProviderSettingsWrapper のパラメーター「登録」の解決(. Settings.IRegistrationSettings 登録、MvcMembership.Settings.IPasswordSettings パスワード、MvcMembership.Settings.ILoginSettings ログイン) MvcMembership.Settings.RegistrationSettings,(none) の解決 (MvcMembership.Settings.IRegistrationSettings, (none) からマップ) コンストラクターのパラメーター「requiresUniqueEmailAddress」の解決.Boolean,(none) ] Microsoft.Practices.Unity.UnityContainer.DoBuildUp(Type t, Object existing, String name, IEnumerableBoolean,(none) ] Microsoft.Practices.Unity.UnityContainer.DoBuildUp(Type t, Object existing, String name, IEnumerableBoolean,(none) ] Microsoft.Practices.Unity.UnityContainer.DoBuildUp(Type t, Object existing, String name, IEnumerable1 resolverOverrides) +546
Microsoft.Practices.Unity.UnityContainer.DoBuildUp(Type t, String name, IEnumerable
1 resolverOverrides) +20 System.Web.Mvc.DefaultControllerActivator.Create(RequestContext requestContext, Type controllerType) +68
[InvalidOperationException: タイプ 'MyProject.Web.Areas.MvcMembership.Controllers.UserAdministrationController' のコントローラーを作成しようとしたときにエラーが発生しました。コントローラーにパラメーターのないパブリック コンストラクターがあることを確認してください。 Web.Mvc.MvcHandler.ProcessRequestInit(HttpContextBase httpContext, IController& controller, IControllerFactory& factory) +346 System.Web.Mvc.<>c_ DisplayClass6.b _2() +71 System.Web.Mvc.<>c__DisplayClassb1.<ProcessInApplicationTrust>b__a() +19
System.Web.Mvc.SecurityUtil.ProcessInApplicationTrust(Func
1 関数) +161 System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +405 System.Web.HttpApplication.ExecuteStep(IExecutionStep ステップ、ブール値 & 完了同期) +375