有没有办法准确追踪Castle Windsor在解析类型时所做的事情?
我正在寻找TraceSource名称或log4net(等)记录器名称。如果这不存在,哪里是挂钩到框架以提供我自己的日志记录代码的最佳位置?
原因是我们已经将我们软件的完全相同的构建/配置部署到两个不同的虚拟服务器(两个服务器都是从同一图像创建的),其中一个“工作”而另一个不工作。
在失败的部署中,我们自己的日志显示预期要注入另一个组件的组件为空。在另一台机器上,日志显示一切都很健康。
我很遗憾为什么会发生这种情况,并希望跟踪城堡容器解析代码。
编辑: 在.NET 3.5 SP1上运行Castle Windsor 2.0版
感谢。
答案 0 :(得分:2)
您可以尝试连接到内核的DependencyResolving
事件:
container.Kernel.DependencyResolving += (componentModel, dependencyModel, dependency) => {};
或添加ISubDependencyResolver
:
container.Kernel.Resolver.AddSubResolver(new MyDependencyResolver());