グローバリゼーション ルール
グローバリゼーション ルールでは、世界対応のライブラリとアプリケーションがサポートされます。
このセクションでは、
ルール | 説明 |
---|---|
CA1303: ローカライズされたパラメーターとしてリテラルを渡さないでください | 外部から参照可能なメソッドは、.NET コンストラクターまたはメソッドにパラメーターとして文字列リテラルを渡し、その文字列をローカライズ可能にする必要があります。 |
CA1304: CultureInfo を指定する | メソッドまたはコンストラクターは、System.Globalization.CultureInfo パラメーターを受け取るオーバーロードを持つメンバーを呼び出し、メソッドまたはコンストラクターは CultureInfo パラメーターを受け取るオーバーロードを呼び出しません。 CultureInfo または System.IFormatProvider オブジェクトが指定されていない場合、オーバーロードされたメンバーによって提供される既定値が、すべてのロケールで必要な効果を持たない可能性があります。 |
CA1305: IFormatProvider を指定する | メソッドまたはコンストラクターは、System.IFormatProvider パラメーターを受け取るオーバーロードを持つ 1 つ以上のメンバーを呼び出します。メソッドまたはコンストラクターは、IFormatProvider パラメーターを受け取るオーバーロードを呼び出しません。 System.Globalization.CultureInfo オブジェクトまたは IFormatProvider オブジェクトが指定されていない場合、オーバーロードされたメンバーによって提供される既定値が、すべてのロケールで必要な効果を持たない可能性があります。 |
CA1307: わかりやすくするために StringComparison を指定 | 文字列比較操作では、StringComparison パラメーターを設定しないメソッド オーバーロードが使用されます。 |
CA1308: 文字列を大文字の に正規化する | 文字列は大文字に正規化する必要があります。 小さな文字グループは、小文字に変換されるときにラウンド トリップを行うことはできません。 |
CA1309:順序を示す StringComparison を使用します | 非言語的な文字列比較操作では、StringComparison パラメーターは Ordinal または OrdinalIgnoreCase に設定されません。 パラメーターを StringComparison.Ordinal または StringComparison.OrdinalIgnoreCase に明示的に設定すると、多くの場合、コードの速度が向上し、より正確になり、信頼性が高まります。 |
CA1310: 正確性のために StringComparison を指定してください | 文字列比較操作では、StringComparison パラメーターを設定せず、既定でカルチャ固有の文字列比較を使用するメソッド オーバーロードが使用されます。 |
CA1311: カルチャを指定するか、インバリアント バージョンを使用 | ToUpper または ToLower を呼び出すときに、カルチャを指定するか、インバリアント カルチャを使用して現在のカルチャへの暗黙的な依存関係を回避します。 |
CA2101: P/Invoke 文字列引数のマーシャリングを指定 | プラットフォーム呼び出しメンバーは、部分的に信頼された呼び出し元を許可し、文字列パラメーターを持ち、文字列を明示的にマーシャリングしません。 これにより、潜在的なセキュリティの脆弱性が発生する可能性があります。 |
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET