StructureMap强类型构造函数参数

时间:2010-10-14 17:47:35

标签: c# dependency-injection structuremap

我有一点像这样的StructureMap配置:

x.ForConcreteType<OrderProcessor>().Configure
    .Ctor<string>("param1").EqualToAppSetting("setting1")
    .Ctor<string>("param2").EqualToAppSetting("setting2")
    .Ctor<string>("param3").EqualToAppSetting("setting3");

这很有效,但它有点神奇的方法。如果我添加或删除构造函数参数,或更改其名称,但忘记更新StructureMap配置,我将不会发现它直到运行时。

StructureMap中是否存在更强类型的替代语法?这甚至可能吗?

1 个答案:

答案 0 :(得分:2)

我的团队从注入原始参数转向构造函数参数,主要是因为这个问题。相反,我们创建一个对象,该对象具有所有需要注入的设置的属性,然后执行一些技巧,以便容器从配置文件中自动填充该对象。

你可以在这里阅读:

http://www.lostechies.com/blogs/joshuaflanagan/archive/2009/07/12/how-we-handle-application-configuration.aspx