CA2257: 'DynamicInterfaceCastableImplementationAttribute' ile bir arabirimde tanımlanan üyeler 'static' olmalıdır

Özellik Değer
Kural Kimliği CA2257
Başlık 'DynamicInterfaceCastableImplementationAttribute' ile bir arabirimde tanımlanan üyeler 'static' olmalıdır
Kategori Kullanım
Düzeltme bozucu ya da bozmayan olabilir Kesintisiz
.NET 10'da varsayılan olarak etkin Uyarı olarak
Geçerli diller C# ve Visual Basic

Neden

Arabirim üyesi açıkça uygulanmamış veya static olarak işaretlenmemiştir.

Kural açıklaması

Meta verilerde, IDynamicInterfaceCastable uygulayan bir türün dinamik bir arabirim uygulaması gerçekleştirme garantisi olmadığından, bu tür üzerinde açık bir şekilde tanımlanmamış bir örnek arabirim üyesine yapılan çağrılar çalışma zamanında başarısız olma ihtimaline sahiptir. Çalışma zamanı hatalarını önlemek için yeni arabirim üyelerini staticişaretleyin.

İhlalleri düzeltme

Arabirim üyesini staticişaretleyin.

Example

[DynamicInterfaceCastableImplementation]
interface IExample
{
    // This method violates the rule.
    void BadMethod();

    // This method satisfies the rule.
    static void GoodMethod()
    {
        // ...
    }
}

Hatalar ne zaman bastırılacak?

Bu kuraldan uyarıyı bastırmayın.

Ayrıca bkz.