如果条件或尝试阻止

ZVe*_*nue 1 .net c#

哪一个更好用?

if (condition)
{
    flagCheck = true;

    //Service layer call - code.

    flagCheck = false;
}
Run Code Online (Sandbox Code Playgroud)

要么

if (condition)
{
    flagCheck = true;

    try
    {
       //Service layer call - code.
    }
    finally
    {
        flagCheck = false;
    }
}
Run Code Online (Sandbox Code Playgroud)

这两种方法有什么区别?是否存在可以优先使用其中一种的情况?

dtb*_*dtb 8

在第一种情况下,flagCheck仍然是true如果// Service layer call - code抛出异常,而在第二种情况下flagCheck将被设置为false// Service layer call - code不管一个是否引发异常与否.

这两种情况都不比其他情况好; 选择一个能满足您需求的产品.