解析Windsor容器找不到的组件时,会抛出异常。
StructureMap有一个TryGetInstance方法,它返回null无法找到所请求的组件。
Castle Windsor有这样的东西吗?或者我被迫捕获这些异常(我不喜欢这样,因为抛出和捕获异常的性能开销)。
提前致谢,
REMCO
答案 0 :(得分:12)
在调用Windsor容器的Resolve方法之前,您可以检查MicroKernel是否有已注册组件的实例。
以下内容应该有效。
if ( windsor.Kernel.HasComponent( componentType ) )
{
return windsor.Resolve( componentType );
}
return null;