结构图3突破性变化
本文关键字:变化 突破性 结构图 | 更新日期: 2023-09-27 17:58:56
在以前版本的StructureMap中,我有一个这样的代码:
_container.Configure(config =>
config
.For<ILogger>.Use<TLogger>.Ctor<string>("loggerName")
.Is((IContext ctx) => ctx.Root.RequestedType.ToString))
使用它,我能够将类名传递给我的记录器,这在自动布线场景中非常有用。
更新到StructureMap 3后,上面的代码显示错误,我找不到合适的StructureMap3代码。
TL;DRContext.Root在哪里?如何在StructureMap 3中访问它?
看起来我一开始就错了。
代替Context.Root
,我可以使用Context.ParentType
来实现我想要的。
此链接中提供的示例:http://docs.structuremap.net/UsingSessionContext.htm#section1(Logger Sample)帮助我找到了解决方案。