FxCop 規則の移植ステータス
以前に Visual Studio の静的コード分析を使用していたユーザーが、.NET アナライザーとしての現在の実装では、どの規則を使用できるかを示します。 このページでは、移植された規則の一覧を示します。 移植されていない規則、およびそれらが移植される予定であるかどうかについては、「移植されていない規則」を参照してください。
移植された規則
Roslyn アナライザー リポジトリの自動生成ドキュメント ページ には、Roslyn アナライザーに移植された規則の最新の一覧が含まれています。 このページには、規則が既定で有効になっているかどうかや、関連付けられているコード修正プログラムがあるかどうかなどの詳細情報も含まれています。 (コード修正プログラムとは、Visual Studio の電球アイコン メニューで使用できるワン クリック修正プログラムです)。
このページの日付以降は、.NET アナライザー に移植された FxCop 規則の一覧に、次のものが含まれます。
ルールの ID | Title |
---|---|
CA1000 | ジェネリック型の静的メンバーを宣言しません |
CA1001 | 破棄可能なフィールドを所有する型は、破棄可能でなければなりません |
CA1002 | ジェネリック リストを公開しません |
CA1003 | 汎用イベント ハンドラーのインスタンスを使用します |
CA1005 | ジェネリック型でパラメーターを使用しすぎないでください |
CA1008 | Enums は 0 値を含んでいなければなりません |
CA1010 | コレクションは、ジェネリック インターフェイスを実装しなければなりません |
CA1012 | 抽象型にはコンストラクターを含めません |
CA1014 | CLSCompliant をアセンブリに設定します |
CA1016 | アセンブリ バージョンをアセンブリに設定します |
CA1017 | ComVisible をアセンブリに設定します |
CA1018 | 属性を AttributeUsageAttribute に設定します |
CA1019 | 属性引数にアクセサーを定義します |
CA1021 | out パラメーターを使用しません |
CA1024 | 適切な場所にプロパティを使用します |
CA1027 | 列挙型を FlagsAttribute に設定します |
CA1028 | 列挙ストレージは Int32 でなければなりません |
CA1030 | 適切な場所にイベントを使用します |
CA1031 | 一般的な例外の種類はキャッチしません |
CA1032 | 標準例外コンストラクターを実装します |
CA1033 | インターフェイス メソッドは、子型によって呼び出し可能でなければなりません |
CA1034 | 入れ子にされた型を参照可能にすることはできません |
CA1036 | 比較可能な型でメソッドをオーバーライドします |
CA1040 | 空のインターフェイスは使用しません |
CA1041 | ObsoleteAttribute メッセージを指定します |
CA1043 | インデクサーには整数または文字列引数を使用します |
CA1044 | プロパティを書き込み専用にすることはできません |
CA1045 | 型を参照によって渡しません |
CA1046 | 参照型で、演算子 equals をオーバーロードしないでください |
CA1047 | シールド型の保護されたメンバーを宣言しません |
CA1050 | 名前空間で型を宣言します |
CA1051 | 参照可能なインスタンス フィールドを宣言しません |
CA1052 | スタティック ホルダー型は Static または NotInheritable でなければなりません |
CA1053 | スタティック ホルダー型はコンストラクターを含むことはできません (CA1053 は、.NET アナライザーの CA1052 の一部です) |
CA1054 | URI パラメーターを文字列にすることはできません |
CA1055 | URI 戻り値を文字列にすることはできません |
CA1056 | URI プロパティを文字列にすることはできません |
CA1058 | 型は、一定の基本型を拡張することはできません |
CA1060 | Pinvoke をネイティブ メソッド クラスに移動します |
CA1061 | 基底クラス メソッドを非表示にしません |
CA1062 | パブリック メソッドの引数の検証 |
CA1063 | IDisposable を正しく実装します |
CA1064 | 例外は public として設定する必要があります |
CA1065 | 予期しない場所に例外を発生させません |
CA1066 | タイプ {0} は Equals をオーバーライドするため、IEquatable<T> を実装する必要があります |
CA1067 | IEquatable<T> を実装するときに Object.Equals(object) をオーバーライドします |
CA1303 | ローカライズされるパラメーターとしてリテラルを渡さない |
CA1304 | CultureInfo を指定します |
CA1305 | IFormatProvider を指定します |
CA1307 | 意味を明確にするための StringComparison の指定 |
CA1308 | 文字列を大文字に標準化します |
CA1309 | 序数の文字列比較を使用します |
CA1401 | P/Invoke は参照可能であることはできません |
CA1501 | 継承を使用しすぎないでください |
CA1502 | メソッドの実装を複雑にしすぎないでください |
CA1505 | メンテナンスできないコードを使用しないでください |
CA1506 | クラス結合度を大きくしすぎないでください |
CA1700 | 列挙型値に 'Reserved' という名前を指定しません |
CA1707 | 識別子はアンダースコアを含むことはできません |
CA1708 | 識別子は、大文字と小文字の区別以外にも相違していなければなりません |
CA1710 | 識別子は、正しいサフィックスを含んでいなければなりません |
CA1711 | 識別子は、不適切なサフィックスを含むことはできません |
CA1712 | 列挙型値を型名のプレフィックスにしません |
CA1713 | イベントは、before または after プレフィックスを含むことはできません |
CA1714 | フラグ列挙型は、複数形の名前を含んでいなければなりません |
CA1715 | 識別子は正しいプレフィックスを含んでいなければなりません |
CA1716 | 識別子はキーワードと同一にすることはできません |
CA1717 | FlagsAttribute 列挙型のみが複数形の名前を含んでいなければなりません |
CA1720 | 識別子に型名が含まれます |
CA1721 | プロパティ名は get メソッドと同一にすることはできません |
CA1724 | 型名は名前空間と同一にすることはできません |
CA1725 | パラメーター名は基本宣言と同一でなければなりません |
CA1801 | 使用されていないパラメーターの確認 |
CA1802 | 適切な場所にリテラルを使用します |
CA1805 | 不必要に初期化しない |
CA1806 | メソッドの結果を無視しない |
CA1810 | 参照型の静的フィールドをインラインで初期化します |
CA1812 | インスタンス化されていない内部クラスを使用しません |
CA1813 | アンシールド属性を使用しません |
CA1814 | 複数次元の配列ではなくジャグ配列を使用します |
CA1815 | equals および operator equals を値型でオーバーライドします」を参照してください。 |
CA1816 | Dispose メソッドは、SuppressFinalize を呼び出す必要があります |
CA1819 | プロパティは、配列を返すことはできません |
CA1820 | 文字列の長さを使用して空の文字列をテストします |
CA1821 | 空のファイナライザーを削除します |
CA1822 | メンバーを static に設定します |
CA1823 | 使用されていないプライベート フィールドを使用しません |
CA1824 | アセンブリを NeutralResourcesLanguageAttribute に設定します |
CA1825 | 長さ 0 の配列割り当てを回避します |
CA2000 | スコープを失う前にオブジェクトを破棄 |
CA2002 | 弱い ID を伴うオブジェクト上でロックしません |
CA2100 | SQL クエリのセキュリティ脆弱性を確認 |
CA2101 | P/Invoke 文字列引数に対してマーシャリングを指定します |
CA2109 | 表示するイベント ハンドラーを確認します |
CA2119 | プライベート インターフェイスを満たすメソッドをシールします |
CA2153 | 破損状態例外をキャッチしません |
CA2200 | スタック詳細を保持するために再度スローします。 |
CA2201 | 予約された例外の種類を発生させません |
CA2207 | 値型のスタティック フィールドのインラインを初期化します |
CA2208 | 引数の例外を正しくインスタンス化します |
CA2211 | 非定数フィールドは表示されません |
CA2213 | 破棄可能なフィールドは破棄されなければなりません |
CA2214 | コンストラクターのオーバーライド可能なメソッドを呼び出しません |
CA2215 | Dispose メソッドが基底クラスの Dispose を呼び出す必要があります |
CA2216 | 破棄可能な型はファイナライザーを宣言しなければなりません |
CA2217 | 列挙型を FlagsAttribute に設定しません |
CA2219 | finally 句で例外を発生させません |
CA2225 | 演算子オーバーロードには名前付けされた代替が存在します |
CA2226 | 演算子は対称型オーバーロードを含まなければなりません |
CA2227 | Collection プロパティは読み取り専用でなければなりません |
CA2229 | シリアル化コンストラクターを実装します |
CA2231 | 値型 Equals のオーバーライドで演算子 equals をオーバーロードします |
CA2234 | 文字列の代わりに System Uri オブジェクトを渡します |
CA2235 | すべてのシリアル化不可能なフィールドを設定します |
CA2237 | ISerializable 型を Serializable に設定します |
CA2241 | 書式設定メソッドに正しい引数を提供 |
CA2242 | NaN に対して正しくテストします |
CA2243 | 属性文字列リテラルは、正しく解析する必要があります |
CA2300 | 安全ではないデシリアライザー BinaryFormatter を使用しないでください |
CA2301 | 最初に BinaryFormatter.Binder を設定しないで BinaryFormatter.Deserialize を呼び出さないでください |
CA2302 | BinaryFormatter.Deserialize を呼び出す前に BinaryFormatter.Binder が設定されていることを確認します |
CA2305 | 安全ではないデシリアライザー LosFormatter を使用しないでください |
CA2310 | 安全ではないデシリアライザー NetDataContractSerializer を使用しないでください |
CA2311 | 最初に NetDataContractSerializer.Binder を設定しないで逆シリアル化しないでください |
CA2312 | NetDataContractSerializer.Binder を設定してから逆シリアル化してください |
CA2315 | 安全ではないデシリアライザー ObjectStateFormatter を使用しないでください |
CA2321 | SimpleTypeResolver を使って JavaScriptSerializer で逆シリアル化しないでください |
CA2322 | 逆シリアル化する前に JavaScriptSerializer が SimpleTypeResolver によって初期化されていないことを確認してください |
CA3001 | SQL インジェクションの脆弱性のコード レビュー |
CA3002 | XSS の脆弱性のコード レビュー |
CA3003 | ファイル パス インジェクションの脆弱性のコード レビュー |
CA3004 | 情報漏えいの脆弱性のコード レビュー |
CA3005 | LDAP インジェクションの脆弱性のコード レビュー |
CA3006 | プロセス コマンド インジェクションの脆弱性のコード レビュー |
CA3007 | オープン リダイレクトの脆弱性のコード レビュー |
CA3008 | XPath インジェクションの脆弱性のコード レビュー |
CA3009 | XML インジェクションの脆弱性のコード レビュー |
CA3010 | XAML インジェクションの脆弱性のコード レビュー |
CA3011 | DLL インジェクションの脆弱性のコード レビュー |
CA3012 | RegEx インジェクションの脆弱性のコード レビュー |
CA3061 | URL でスキーマを追加しません |
CA3075 | XML での DTD 処理が安全ではありません |
CA3076 | XSLT スクリプト処理が安全ではありません。 |
CA3077 | API 設計 XmlDocument および XmlTextReader で処理が安全ではありません |
CA3147 | 偽造防止トークンの検証を動詞ハンドラーに設定します |
CA5350 | 脆弱な暗号アルゴリズムを使用しないでください |
CA5351 | 破損した暗号アルゴリズムは使用しません |
CA5358 | 安全ではない暗号モードを使用しないでください |
CA5359 | 証明書の検証を無効にしません |
CA5360 | 逆シリアル化で危険なメソッドを呼び出しません |
CA5361 | 強力な暗号の SChannel の使用を無効にしません |
CA5362 | シリアル化可能なクラスで自己参照しません |
CA5363 | 要求の検証を無効にしません |
CA5364 | 非推奨のセキュリティ プロトコルを使用しません |
CA5365 | HTTP ヘッダーのチェックを無効にしません |
CA5366 | DataSet Read XML に XmlReader を使用します |
CA5367 | ポインター フィールドを持つ型をシリアル化しません |
CA5368 | ページから派生したクラスに ViewStateUserKey を設定します |
CA5369 | 逆シリアル化に XmlReader を使用します |
CA5370 | 読み取りの検証に XmlReader を使用します |
CA5371 | スキーマの読み取りに XmlReader を使用します |
CA5372 | XPathDocument に XmlReader を使用します |
CA5373 | 廃止されたキー派生関数を使用しません |
CA5374 | XslTransform を使用しません |
CA5375 | アカウントの Shared Access Signature を使用しません |
CA5376 | SharedAccessProtocol HttpsOnly を使用します |
CA5377 | コンテナー レベルのアクセス ポリシーを使用します |
CA5378 | ServicePointManagerSecurityProtocols を無効にしません |
CA5379 | 弱いキー派生関数アルゴリズムを使用しません |
CA9999 | アナライザー バージョンの不一致 |
関連項目
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示