c# - 哪个命名空间在 CaSTLe Windsor 中拥有 Component.For?

标签 c# castle-windsor

我正在学习 CaSTLe Windsor 并找到了 this tutorial .其中,有这段代码:

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 调用为我抛出编译器错误。 Intellisense 找不到 Component。我应该为这个调用使用什么命名空间?

我通过 NuGet 添加了 CaSTLe.CoreCaSTLe.Windsor 引用。我一直在对象浏览器中搜索,试图找到 Component,但这是一个很常见的名称。本教程不方便地遗漏了* using,我找不到任何文档。

* 我发现很多教程和 StackOverflow 答案都遗漏了 using,我永远也弄不明白为什么。

最佳答案

它在 CaSTLe.MicroKernel.Registration 中。

这有时也让我很恼火,但如果项目是开源的,通常很容易搜索 their repository .

关于c# - 哪个命名空间在 CaSTLe Windsor 中拥有 Component.For?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30944262/

相关文章:

dependency-injection - 我可以使用 caSTLe windsor 热切地实例化注册为单例的实例吗?

.net - 温莎城堡 : Registering Multiple Types

api - 城堡温莎 Fluent API : Define dependency explicitly

c# - 有没有比Environment.StackTrace更简洁的方法来获取调用堆栈信息?

c# - 如何在 ASP.NET MVC 中获取不带参数的 Action 的 URL

c# - 如何调整此 GridView 使其只有一个具有相同值的单元格?

c# - 在运行时生成接口(interface)实现

c# - 用不同的标记拆分字符串

c# - 从选定的组合框中获取值并将其放在文本框 C#

c# - Windsor 为多个接口(interface)注册单例组件