首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在具有Castle的代码中设置Array/List依赖项?

如何在具有Castle的代码中设置Array/List依赖项?
EN

Stack Overflow用户
提问于 2010-05-12 16:22:29
回答 1查看 383关注 0票数 1

我有以下课程:

代码语言:javascript
运行
复制
class Repository : IRepository
class ReadOnlyRepository : Repository

abstract class Command
abstract CommandImpl : Command
{
     public CommandImpl(Repository repository){}
}

class Service
{
    public Service (Command[] commands){}
}

我将它们按以下代码注册:

代码语言:javascript
运行
复制
var container = new Container("WindsorCOntainer.config");
var container = new WindsorContainer(new XmlInterpreter("WindsorConfig.xml"));
container.Kernel.Resolver.AddSubResolver(new ArrayResolver(container.Kernel));
container.AddComponent("repository", typeof(RentServiceRepository));
container.Resolve<RentServiceRepository>();
container.AddComponent("command", typeof(COmmandImpl));
container.AddComponent("rentService", typeof (RentService));
container.Resolve<RentService>(); // Fails here

我收到这样的信息:"RentService在等待依赖项命令“。

我做错什么了?

谢谢,

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-05-12 17:48:09

您不是将CommandImpl注册为Command,而是将其注册为CommandImpl

如果你这样做了:

代码语言:javascript
运行
复制
container.Register(Component.For<Command>().ImplementedBy<CommandImpl>());

会管用的。

我建议你熟悉文献资料,特别是安装工注册API

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2820747

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档