使用 StructureMap,我们拥有所有自动注册的类型。
public class MessageRegistry : Registry
{
public MessageRegistry(){
Scan(x =>
{
x.AssemblyContainingType(typeof (FormatHelper));
x.ConnectImplementationsToTypesClosing(typeof (IMessage<>));
});
}
}
因此,如果我们查找IMessage<Currency>
,它将找到以下类型:
CurrencyMessageHandler : IMessage<Currency>
{
public CurrencyMessageHandler(ISession instance)
}
至于构造函数参数类型 ISession,我们喜欢它是自动连接的,但是,我们有不止 1 个实现,如 SqlSession 和 OracleSession。在这种情况下,我们希望将 SqlSession 作为构造函数参数传递。
在这种情况下如何将命名实例指定为构造函数参数?
非常感激。