Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
| Свойство | Значение |
|---|---|
| Идентификатор правила | CA2257 |
| Заголовок | Элементы, определенные в интерфейсе с параметром DynamicInterfaceCastableImplementationAttribute, должны быть статическими. |
| Категория | Использование |
| Исправление является критическим или не критическим | Не критическое |
| Включен по умолчанию в .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()
{
// ...
}
}
Когда следует подавлять ошибки
Для этого правила отключать вывод предупреждений не следует.