我在第二条if语句中检测到无法访问的代码。能否请您告诉我出了什么问题?

private bool ValidateSettings()
{
    if (chkDownload.Checked && String.IsNullOrEmpty(txtAppName.Text))
    {
        divAppDownloadError.Visible=true;
        return false;
    }
    else
    {
        return true;
    }

    if (chkpplaORfmp.Checked && String.IsNullOrEmpty(txtfmpORppla.Text))
    {
        divXPAAPPDownloadError.Visible = true;
        return false;
    }
    else
    {
         return true;
    }
}

最佳答案

这是因为第一个if/else块将以两种方式返回-在该块之后将不执行任何代码:

if(chkDownload.Checked && String.IsNullOrEmpty(txtAppName.Text))
{
    // You either return here
    divAppDownloadError.Visible=true;
    return false;
}
else
{
    // or here - after this statement how can anything
    // else possible execute?
    return true;
}

关于c# - 检测到无法访问的代码,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2586309/

10-17 02:13