我可以使用StructureMap向ASP.NET MVC控制器注入一些字符串(例如配置值)吗?

Pur*_*ome 2 .net c# structuremap asp.net-mvc dependency-injection

我正在使用structureMap作为ASP.NET MVC网站的IoC/DI.效果很好.

通常,我有我的控制器传递接口和structureMap +贪婪的构造函数==工作得很好.

例如.

public void FooController : Controller
{
    public FooController(IPewPew pewPew) { .. }
}
Run Code Online (Sandbox Code Playgroud)

等等..

但是......我的一个控制器(只有一个em)希望传入两个字符串.

例如..

public void FooController2 : Controller
{
    public FooController2(IPewPew pewPew, string aaa, string bbb) { .. }
}
Run Code Online (Sandbox Code Playgroud)

有什么办法可以用StructureMap做到这一点吗?有没有办法说,当列出字符串"aaa"时,请使用此值=>"hi!";

我真的不想将所有这些字符串放入具有接口的具体类中.

就像我想说的那样.

For<string>().WithName("aaa").Use<string>().WithValue("hi");
Run Code Online (Sandbox Code Playgroud)

干杯!

Bro*_*ass 5

这对我有用:

ObjectFactory.Configure( x=>
{
    x.For<FooController2>()
     .Use<FooController2>()
     .Ctor<string>("aaa")
     .Is("hi");
});
Run Code Online (Sandbox Code Playgroud)