2011-04-21 55 views
2

城堡溫莎依賴注入:使用呼叫者類型爲下面的類在溫莎城堡容器中註冊的參數

namespace MyNamespace 
{ 
    class Foo : IFoo 
    { 
     public Foo(ILog log) 
     { 
      _log = log; 
     } 
     ... 
    } 
} 

ILog是log4net的記錄器,當前註冊的是這樣的:

Component.For<ILog>().UseFactoryMethod(
    () => LogManager.GetLogger(Assembly.GetCallingAssembly().FullName)); 

我想創建一個名爲的記錄器,調用類型爲(在這種情況下爲"MyNamespace.Foo"),而不是像調用程序集。有沒有辦法做到這一點,除了使用反射來玩棧幀?

+1

你看過城堡的測井設施嗎? – 2011-04-21 06:50:06

+0

有關可能的答案,請參閱http://stackoverflow.com/a/13388644/25702 – 2015-02-09 04:23:17

回答