| プロパティ | 値 |
|---|---|
| ルール ID | CA2257 |
| Title | 'DynamicInterfaceCastableImplementationAttribute' を持つインターフェイスで定義されたメンバーは 'static' である必要があります |
| [カテゴリ] | 使用方法 |
| 修正が中断ありか中断なしか | なし |
| .NET 10 で既定で有効 | 警告として |
原因
インターフェイス メンバーが明示的で static で実装されていない (マークが付いていなす)。
規則の説明
IDynamicInterfaceCastableを実装する型はメタデータに動的インターフェイスを実装できない可能性があるため、この型で定義されている明示的な実装ではないインスタンス インターフェイス メンバーの呼び出しは実行時に失敗する可能性があります。 ランタイム エラーを回避するには、新しいインターフェイス メンバーを staticマークします。
違反の修正方法
インターフェイス メンバーに static のマークを付けます。
Example
[DynamicInterfaceCastableImplementation]
interface IExample
{
// This method violates the rule.
void BadMethod();
// This method satisfies the rule.
static void GoodMethod()
{
// ...
}
}
どのようなときにエラーを抑制するか
この規則による警告は抑制しないでください。
こちらもご覧ください
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET