Javaの@SuppressWarningsアノテーションと同様にC#で警告を抑制する方法はありますか?
それができない場合、Visual Studioで警告を抑制する別の方法はありますか?
Javaの@SuppressWarningsアノテーションと同様にC#で警告を抑制する方法はありますか?
それができない場合、Visual Studioで警告を抑制する別の方法はありますか?
はい。
無効にするには、次を使用します。
#pragma warning disable 0169, 0414, anyothernumber
ここで、数字は、コンパイラー出力から読み取ることができる警告のIDです。
コードの特定の部分の後で警告を再度有効にするには(これは良い考えです)、次を使用します。
#pragma warning restore 0169, anythingelse
このようにして、コンパイラの出力をクリーンにし、警告がコードの特定の部分(警告を表示する必要がないことを確認した場所)でのみ抑制されるため、安全を確保できます。
はい、次のようなプラグマ警告アノテーションを使用できます。
#pragma warning disable 414
//some code that generates a warning
#pragma warning restore 414
数字を省略すると、すべての警告コードが無効になり、復元されます。
がある。コンパイラの警告を抑制する方法については、 MSDNページを参照してください。
Visual Studioから、プロジェクトのプロパティに移動し、[ビルド]タブを選択して、[警告の抑制]フィールドに警告番号を入力します。
コードから、特定の警告を無効にするには、#pragmaディレクティブを使用できます。
public class MyClass
{
#pragma warning disable 0168
// code
// optionally, restore warnings again
#pragma warning restore 0168
// more code
}
次のフォームを使用することを強くお勧めします
#pragma warning disable 649 // Field 'field' is never assigned to, and will always have its default value 'value'
#pragma warning restore 649
最初の行のコメントは、コンパイラ警告(レベル4)CS0649のMSDNドキュメントの最初のようなものから取られています。警告はC#で番号が付けられているため、警告が無効になっている場合にコードで実際に何が起こっているかを示す唯一の参照です。プラグマ警告のソリューション全体で検索を実行するときに、検索結果ウィンドウに表示される理由を取得する唯一の方法は、行の最後に配置することです。
プロジェクトのビルド後に出力ウィンドウを見ると、警告番号を識別できます。「出力の表示:ビルド」と表示されていることを確認します。
#pragmaディレクティブを確認できます:http://msdn.microsoft.com/en-us/library/441722ys (VS.80).aspx 。
SuppressMessageAttribute
VisualStudioをご覧ください:http: //msdn.microsoft.com/en-us/library/ms182068.aspx
警告を防ぐSuppressMessageデータ注釈を使用できます。
これは次のようになります。
[SuppressMessage("Reason #Enter whatever you'd like", "ID, must match what intellsense is showing it looks something like this: IDE0001", Justification = "(optional, your own description")]
これが実際の例です:
[SuppressMessage("IntelliSenseCorrection", "IDE0001", Justification = "Do Not Remove <T> Variable, It's Required For Dapper")]
プロジェクトまたはソリューションのプロパティを確認して、警告レベルをより低いレベルに設定することもできると思います。そうでなければ、他の応答はおそらくより良いです。