-1

私は頻繁に使用するかなり単純なC#コードを持っています

        SqlCommand sql = new SqlCommand();
        sql.Connection = new SqlConnection(getConnectionString());
        sql.CommandText = @"update [Reporting].[dbo].[Customer_Master]
                            set groupID = @groupID
                            where customer = @customerID";

        sql.Parameters.Add(new SqlParameter("@groupID", groupID));
        sql.Parameters.Add(new SqlParameter("@customer", customer));


        sql.Connection.Open();
        sql.ExecuteNonQuery();
        sql.Connection.Close();

        sql.Dispose();

何らかの理由でDBが正しく更新されなかったため、メソッドの先頭にブレークポイントを追加し、各行をステップ実行して、変数が正しく入力されていることを確認することにしました。

ただし、このメソッドはsql.Connection.Open()の後で閉じます。これは、メインコードに戻るだけだからです。

何かご意見は?

ありがとう。

編集:私は問題を見つけました。間違ったパラメータ名を使用していました。それでも、接続を開いた後、エラーをスローせずにメソッドを閉じたのは奇妙だと思います。

4

1 に答える 1

0

ここで何らかの例外をスローしているか、.Open をステップ実行しているときにタイムアウト エラーである可能性があります。しかし、私はダッシュに同意します。それをtry/catchに入れることから始めてください。これは常に最初のステップであるべきです。

于 2012-09-20T14:14:28.270 に答える