2009-02-24 13 views
10

Windsorコンテナが見つからないコンポーネントを解決すると、例外がスローされます。Castle Windsor:Resolve()によってスローされる例外を抑制する

StructureMapにはTryGetInstanceメソッドがあり、nullを返し、要求されたコンポーネントを見つけることができません。

Castle Windsorには次のようなものがありますか?あるいは、私はこれらの例外を捕まえることを余儀なくされました(例外を投げたりキャッチしたりすることによるパフォーマンスのオーバーヘッドのために、私はそれを気に入らないのです)。 MicroKernelはウィンザーコンテナのResolveメソッドを呼び出す前に、登録されたコンポーネントのインスタンスを持っている場合は、事前に

おかげで、

レムコ

答えて

12

あなたがチェックすることができます。

次のようなものが動作するはずです。

if (windsor.Kernel.HasComponent(componentType)) 
{ 
    return windsor.Resolve(componentType); 
} 

return null; 
+3

はい、ただし、名前と型で解決するオーバーロードはありません。 名前は1つとタイプは1つのみです。 –

+0

男、私はこの2時間を探していた。ありがとう。 –

関連する問題