在StructureMap中,如何在特定的Container实例上发布和处理Http范围的对象?对于Object Factory中的默认intance,我可以执行方法ReleaseAndDisposeAllHttpScopedObjects()
,但Container类和IContainer接口似乎没有这样的方法。
答案 0 :(得分:6)
如果你看一下ObjectFactory.ReleaseAndDisposeAllHttpScopedObjects
的内部,你可以看到这是一个像这样实现的便捷方法:
public static void ReleaseAndDisposeAllHttpScopedObjects()
{
HttpContextLifecycle.DisposeAndClearAll();
}
IE。您可以调用HttpContextLifecycle.DisposeAndClearAll
方法来清除对象。
编辑:由于HttpContextLifecycle是全局的而不是每个容器,我认为{H}请求期间nested container方法可以获得对对象生命周期更精细控制的解决方案。