当前位置:  开发笔记 > 大数据 > 正文

如何将参数传递给IOC框架中的构造函数

如何解决《如何将参数传递给IOC框架中的构造函数》经验,为你挑选了2个好方法。

如何将参数传递给IOC框架中的构造函数?我想做类似的事情:(试图成为IOC框架不可知;))

object objectToLogFor = xxx;
container.Resolve(objectToLogFor); 

public class MyLogging : ILogging
{
    public MyLogging(object objectToLogFor){}
}

看起来这在StructureMap中是不可能的.但我很乐意看到有人证明我错了.

其他框架是否功能更丰富?或者我是以错误的方式使用IOC框架?



1> Edward Wilde..:

在结构图中,您可以使用With方法实现此目的:

string objectToLogFor = "PolicyName";
ObjectFactory.With(objectToLogFor).GetInstance();

请参阅:http://codebetter.com/blogs/jeremy.miller/archive/2008/09/25/using-structuremap-2-5-to-inject-your-entity-objects-into-services.aspx



2> Remco Ros..:

对于温莎城堡:

var foo = "foo";
var service = this.container.Resolve(new { constructorArg1 = foo });

请注意使用匿名对象来指定构造函数参数.

使用StructureMap:

var foo = "foo";
var service = container.With(foo).GetInstance();

推荐阅读
可爱的天使keven_464
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有