ExecuteScalar()
Web上でヘルプが見つからない という奇妙な例外を取得します:
セッションが強制終了状態のため、実行を続行できません。
SqlConnection/SqlCommand を使用しています
コマンドは基本的な INSERT INTO... で、105 列 (および列データを設定するための 105 個のパラメーター) があり、その後に SELECT SCOPE_IDENTITY(); が続きます。
接続文字列を確認しました - それは正しく、接続は開いています。
このエラーが何を示しているのか、このエラーをどこから調べればよいのかさえわかりません。
では、このエラーは正確には何を意味するのでしょうか? そもそもセッションはどのようにして kill 状態になるのでしょうか?
コードは非常に簡単です。
using (SqlConnection conn = new SqlConnection(connString))
{
conn.Open();
using (SqlCommand cmd = new SqlCommand(@"INSERT INTO VendorNote (VendorId, AdminComment...) VALUES (@VendorId, @AdminComment, ...); SELECT SCOPE_IDENTITY(); ", conn))
{
cmd.Parameters.AddWithValue("@VendorId", VendorId);
cmd.Parameters.AddWithValue("@AdminComment", AdminComment);
Id = (int) cmd.ExecuteScalar();
}
}