使用块识别包含

问题描述 投票:0回答:1

我如何识别调用链中包含的 using 块?我的意思是不将使用块创建的对象保存在静态或全局中,也不传递它。如果我有:

using(new Foo())
{
    A();
}
void A()
{
    B();
}

在函数 B 中,我希望能够识别和访问 Foo 实例。如果有的话,使用块的上层包围会更好。

c# using-statement
1个回答
1
投票

没有神奇的方法来获取环境状态,特别是如果您明确排除静态/异步局部变量之类的东西。

所以:直接传入即可。不要让它变魔术-通过传入它使其明确和简单:

B
(是的,我知道你也说过“也不传递它”,但我认为这是最合适的解决方案)
    
© www.soinside.com 2019 - 2024. All rights reserved.