gpt4 book ai didi

c# - 如何释放和处置 Container 实例上的所有 Http 范围的对象?

转载 作者:太空狗 更新时间:2023-10-29 23:08:44 27 4
gpt4 key购买 nike

在 StructureMap 中,如何释放和处置特定 Container 实例上的所有 Http 范围的对象?对于对象工厂中的默认实例,我可以执行方法ReleaseAndDisposeAllHttpScopedObjects(),但是Container类和IContainer接口(interface)似乎没有这样的方法。

最佳答案

如果您查看 ObjectFactory.ReleaseAndDisposeAllHttpScopedObjects 的内部结构,您会发现它是一个像这样实现的便捷方法:

public static void ReleaseAndDisposeAllHttpScopedObjects()
{
HttpContextLifecycle.DisposeAndClearAll();
}

即。您可以调用 HttpContextLifecycle.DisposeAndClearAll 方法来清除对象。

编辑:由于 HttpContextLifecycle 是全局的而不是每个容器,我认为 nested container方法将是在 Http 请求期间获得对对象生命周期更细粒度控制的解决方案。

关于c# - 如何释放和处置 Container 实例上的所有 Http 范围的对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15839766/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com