有没有办法在Structuremap中链接构造函数?我想要一个更简洁的代码 - 基本上试图摆脱代码库中的new
关键字。
目前我所拥有的:
container.Configure(c =>
{
c.For<IDataContext>()
.Singleton()
.Use(new CarDataContextWrapper(new CarDataContext(Settings.Default.ConnectionString)
{
CommandTimeout = 60
}));
});
要注入构造函数参数,我想使用.Ctor
声明。但是我如何为我想要初始化的第二堂课做这件事呢?
container.Configure(c =>
{
c.For<IDataContext>()
.Use<CarDataContextWrapper>()
.Ctor<CarDataContext>().Is(x=>); // HOW TO SET THIS?
});
答案 0 :(得分:0)
container.Configure(c =>
{
c.For<IDataContext>()
.Use<CarDataContextWrapper>("getting context", ctx=>
{
return ctx.GetInstance<CarDataContextWrapper>();
});
// Also need to tell SM how to build CarDataContextWrapper
});