首页
学习
活动
专区
圈层
工具
发布

DryIoc -?
EN

Stack Overflow用户
提问于 2015-03-22 12:05:29
回答 1查看 804关注 0票数 1

我正在尝试为DryIoc创建一个(v2.0预览版)。通常情况下,大多数事情看起来都很简单,但是DryIoc似乎并不支持南希依赖的东西之一。

内置的tinyioc容器在面对一个具有两个“相同长度”构造函数的类型(即相同数量的参数,但它们的类型不同)时,将解析其具有完整类型注册集的类型。

在运行我的引导程序时,在RegisterTypes方法中抛出一个异常:

Additional information: Unspecified how to select single constructor for implementation type Nancy.ViewEngines.FileSystemViewLocationProvider with 2 public constructors.

在我的DryIoc实现中,我需要做的事情可能很简单,但我还没有弄清楚。如果有人有任何建议,请回复!

我当前的nancy实现:比特桶片段

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-23 07:42:36

默认情况下,DryIoc期望单个公共构造函数注入依赖项。但是它可以使用规则为每个容器定制。根据您的情况,您可以按以下方式自定义构造函数选择:

代码语言:javascript
复制
var container = new Container(rules => 
    rules.With(FactoryMethod.ConstructorWithResolvableArguments));

但是,如果将此行为设置为每个容器可能过高,则可以将其设置为特定的注册:

代码语言:javascript
复制
container.Register<IService, SomeService>(made: Made.Of(FactoryMethod.ConstructorWithResolvableArguments));

更完整的用法示例可以找到这里

更新:

退出:Nancy.Bootstrappers.DryIoc

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

https://stackoverflow.com/questions/29194137

复制
相关文章

相似问题

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