[英]How to break out of using block from inside IDisposable class
我得到了一個帶有以下構造函數的一次性類:
public MyClass(bool allowed){
if(allowed) return;
else { // leave outer using }
}
它是這樣使用的
using (new MyClass(false))
{
DoSomething();
}
或者喜歡以下
using (new MyClass(true))
{
DoSomething();
}
如何實現只有用 (true) 調用的那個才會執行塊(又名 DoSomething()),如果用 (false) 調用它就不會執行塊?
為什么不基於布爾值
var b = true;// or false
using (new MyClass(b))
{
if(b)
DoSomething();
}
由於之前的答案還不夠,我建議向 MyClass 添加一個公共屬性,該屬性可用於獲取布爾值並在 using 語句中進行檢查。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.