2015-06-19 40 views
1

我正在學習溫莎堡,我發現this tutorial。在這裏面,有這樣的代碼:哪個命名空間在Castle Windsor中保存Component.For?

private void button1_Click(object sender, EventArgs e) 
{ 
    // CREATE A WINDSOR CONTAINER OBJECT AND REGISTER THE INTERFACES, AND THEIR CONCRETE IMPLEMENTATIONS. 
    var container = new WindsorContainer(); 
    container.Register(Component.For<Main>()); 
    container.Register(Component.For<IDependency1>().ImplementedBy<Dependency1>()); 
    container.Register(Component.For<IDependency2>().ImplementedBy<Dependency2>()); 

    // CREATE THE MAIN OBJECT AND INVOKE ITS METHOD(S) AS DESIRED. 
    var mainThing = container.Resolve<Main>(); 
    mainThing.DoSomething(); 
} 

我與此相伴以下,但Component.For調用拋出編譯器錯誤我。智能感知無法找到Component。我應該使用什麼命名空間來進行此調用?

我通過NuGet添加了Castle.CoreCastle.Windsor引用。我一直在尋找對象瀏覽器,試圖找到Component,但它是一個很常見的名字。本教程不方便地忽略了* using,我無法找到任何文檔。

* 我發現很多教程和StackOverflow答案都遺漏了using,我永遠無法弄清楚爲什麼。

+1

如果您有幾分鐘的時間,請發送拉取教程要求以包含必需的命名空間,您可以在GitHub.com上編輯減價文件。 –

+0

@JonathonRossi對不起,我不熟悉GitHub。我從NuGet獲得了Castle Windsor圖書館。 – user2023861

回答

3

它在Castle.MicroKernel.Registration

有時候也會讓我煩惱,但如果項目是開源的,通常很容易搜索their repository

相關問題