[C#]一般的な例外に関するコード分析エラーの抑制方法

一般的な例外をむやみにキャッチするのはNGだけど、 キャッチしなければならない場合もある。

そういう場合は以下の様な属性をつければコード分析エラーを抑制できる。 さすがに CA2201 の抑制をすることはないだろうけど…

[SuppressMessage( // Exceptionなどの例外をメソッド外に送出する場合のエラー抑制
  "Microsoft.Usage", "CA2201:DoNotRaiseReservedExceptionTypes")]
[SuppressMessage( // Exceptionなどの一般的な例外をキャッチする場合のエラー抑制
  "Microsoft.Design", "CA1031:DoNotCatchGeneralExceptionTypes")]
internal void ShowFailureMessageBox()
{
  try
  {
    throw new Exception();
  }
  catch (Exception ex)
  {
    ex.ToString();
  }
}
Share
関連記事