无法使用一个参数配置构造函数

时间:2016-08-02 08:58:05

标签: c# ioc-container structuremap

我尝试配置RedisManagerPool。 RedisManagerPool有3个构造函数,但是我不能用一个字符串参数(host)设置构造函数。 它调用必须提供至少例外。

代码是否有效,在注释破坏的代码中。

var host = CloudConfigurationManager.GetSetting("Data.Redis.ConnectionString");
var list = new List<string>() {host};
//TODO: Can't setup constructor with host parameter. I don't the reason.
//For<IRedisClientsManager>()
//    .Add<RedisManagerPool>()
//    .Ctor<string>("host").Is(host);
For<IRedisClientsManager>()
.Add<RedisManagerPool>()
.Ctor<IEnumerable<string>>("hosts").Is(list);

1 个答案:

答案 0 :(得分:0)

我认为您需要使用使用而不是添加

For<IRedisClientsManager>()
.Use<RedisManagerPool>()
.Ctor<IEnumerable<string>>("hosts").Is(list);