質問: c#でSQL serverへ接続してselect等の操作をする際にエラーが発生した場合、SqlException.Numberを取得すればSQL serverのエラーコードが分かると思って宜しいでしょうか? それとも他にも情報があったりしますでしょうか? エラーの内容をログ出力したいため質問させていただきました。 Oracleの場合は、ORAで始まるエラーコードを出力していましたが、SQL serverの場合は、それがSqlException.Numberに入ってくると考えています。
回答: SQL Serverで発生するエラーは * エラー番号 * エラー メッセージ文字列 * Severity * 状態 * プロシージャ名 * 行番号 で管理されています。C#からSqlClientで接続した際、このエラーは`SqlError`クラスで表現され、`SqlException`クラスの`Errors`プロパティに格納されています。 質問されているように`SqlException.Number`プロパティでも得られますが、正確には複数のエラーが格納されている可能性があることに注意してください。