2017-08-13 5 views
0

助けてください!これは私が私が修正する必要があることを得ている最後のエラーである「SaveUserは」エラー「clsDataLayer.SaveUser(文字列、文字列、文字列、文字列)」を得ている:いないすべてのコードパスが'SaveUser(文字列)':すべてのコードパスが値を返すわけではありません

// This function saves the user login 
    public static bool SaveUser(string Database, string UserName, string UserPassword, string SecurityLevel) 
    { 
     bool recordSaved; 

     try 
     { 
      // Add your comments here 
      OleDbConnection conn = new OleDbConnection("PROVIDER=Microsoft.ACE.OLEDB.12.0;" + 
      "Data Source=" + Database); 

      conn.Open(); 
      OleDbCommand command = conn.CreateCommand(); 
      string strSQL; 

      strSQL = "Insert into tblUserLogin (UserName, UserPassword, SecurityLevel) values ('" + 
      UserName + "', '" + UserPassword + "', '" + SecurityLevel + "')"; 

      command.CommandType = CommandType.Text; 
      command.CommandText = strSQL; 

      command.ExecuteNonQuery(); 

      conn.Close(); 
      recordSaved = true; 



     } 
     catch (Exception ex) { } 

} 
値を返します

ここにこのプロセスのelseがあります。

protected void btnAddUser_Click(object sender, EventArgs e) 
    { 
     if (clsDataLayer.SaveUser(Server.MapPath("PayrollSystem_DB.accdb"), 
UserName.Text, UserPassword.Text, ddlSecurityLevel.SelectedValue)) 
     { 

      lblDisplay.Text = "The user was successfully added!"; 
      grdUsers.DataBind(); 
     } 

     else 
      lblDisplay.Text = "The user was not added!"; 


    } 

答えて

1

あなたは何も返されていません。代わりに

recordSaved = true; 

のあなただけ行うことができます:あなたは、例外をキャッチしているとしても

return true; 

、あなたも、例えばcatchブロックから何かを返す必要があります

catch (Exception ex) { return false; } 
+0

ありがとうございました!それはうまくいった! –

関連する問題