C# 温莎城堡登记册关闭-打开通用 公共接口i进程{} 公共接口IProcessHandler,其中TProcess:IProcess{ 无效处理消息; } 公共类AccessMessage:IProcess,其中TProcess:IProcess{ 公共虚拟字符串用户名{get;protected set;} 公共虚拟TProcess InnerProcess{get;protected set;} } 公共类AccessMessageHandler:IProcessHandler,其中TProcess:IProcess{ public AccessMessageHandlerIProcessHandler innerHandler{} 公共无效HandleAccessMessage消息{ //访问控制 _innerHandler.Handlemessage.InnerProcess } } 公共类JustDoIt:IProcess{} 公共类JustDoItHandle:IProcessHandler{ 公共无效HandleJustDoIt消息{ //处理 } } container.RegisterClasses.FromAssemblyInthis应用程序 .BasedOnTypeOfProcessHandler .Ift=>t.Name.ContainsAccessMessageHandler==false .使用服务。所有接口 .生活方式 .允许多重匹配; //container.RegisterComponent.Fortypeof IProcessHandler.ImplementedByType of AccessMessageHandler;//编译器不允许这样做 //container.RegisterComponent.Fortypeof IProcessHandler.ImplementedByType of AccessMessageHandler;//解析不支持服务的组件时出错 var handler=Container.Resolve; Handlenew AccessMessagenew JustDoIt,用户名;

C# 温莎城堡登记册关闭-打开通用 公共接口i进程{} 公共接口IProcessHandler,其中TProcess:IProcess{ 无效处理消息; } 公共类AccessMessage:IProcess,其中TProcess:IProcess{ 公共虚拟字符串用户名{get;protected set;} 公共虚拟TProcess InnerProcess{get;protected set;} } 公共类AccessMessageHandler:IProcessHandler,其中TProcess:IProcess{ public AccessMessageHandlerIProcessHandler innerHandler{} 公共无效HandleAccessMessage消息{ //访问控制 _innerHandler.Handlemessage.InnerProcess } } 公共类JustDoIt:IProcess{} 公共类JustDoItHandle:IProcessHandler{ 公共无效HandleJustDoIt消息{ //处理 } } container.RegisterClasses.FromAssemblyInthis应用程序 .BasedOnTypeOfProcessHandler .Ift=>t.Name.ContainsAccessMessageHandler==false .使用服务。所有接口 .生活方式 .允许多重匹配; //container.RegisterComponent.Fortypeof IProcessHandler.ImplementedByType of AccessMessageHandler;//编译器不允许这样做 //container.RegisterComponent.Fortypeof IProcessHandler.ImplementedByType of AccessMessageHandler;//解析不支持服务的组件时出错 var handler=Container.Resolve; Handlenew AccessMessagenew JustDoIt,用户名;,c#,dependency-injection,castle-windsor,decorator,open-generics,C#,Dependency Injection,Castle Windsor,Decorator,Open Generics,如何注册IProcessHandler>?您是否尝试过:container.RegisterComponent.Fortypeof IProcessHandler.ImplementedByType of AccessMessageHandler?@Steven我不想为所有IProcessHandler实现AccessMessageHandler,AccessMessageHandler应该只处理AccessMessage进程您尝试过我的建议吗?是的,我尝试过,尝试解析与组件相关的组件时检测到依

如何注册IProcessHandler>?

您是否尝试过:container.RegisterComponent.Fortypeof IProcessHandler.ImplementedByType of AccessMessageHandler?@Steven我不想为所有IProcessHandler实现AccessMessageHandler,AccessMessageHandler应该只处理AccessMessage进程您尝试过我的建议吗?是的,我尝试过,尝试解析与组件相关的组件时检测到依赖项循环