如何修复此错误:在c#中检测到无法访问的代码

时间:2018-06-14 08:01:07

标签: c#

    public bool idletimesetting(string idletime)
    {
        string sUpdateQuery="";
        OleDbConnection con = new OleDbConnection(IUCGlobals.connectionprovider);
        OleDbCommand cmd = new OleDbCommand();
        OleDbTransaction trans = null;
        try
        {
            sUpdateQuery = "UPDATE IUC_CON_USER SET F_IDLE_MINS =" + Convert.ToInt16(idletime.Trim());
            sUpdateQuery += "WHERE F_USER_ID =" + IUCGlobals.gLoggedUserId;
            trans = con.BeginTransaction();
            cmd.Connection = con;
            cmd.Transaction = trans;
            cmd.CommandText = sUpdateQuery;
            cmd.ExecuteNonQuery();
            trans.Commit();
            return true;
        }
        catch
        {
            return false;
            trans.Rollback();
        }
    }

In Catch part trans.Rollback();我收到此错误,请帮我纠正此问题, 提前谢谢。

1 个答案:

答案 0 :(得分:4)

return之后您无法执行任何操作,因此trans.Rollback()无法访问:

改变这个......

catch
{
    return false;
    trans.Rollback();
}

到此:

catch
{
    trans.Rollback();
    return false;
}

MSDN字中:

  

return语句终止执行它的方法   出现并将控制权返回给调用方法。