Aracılığıyla paylaş


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
Hataya neden olan veya bozulmayan düzeltme Hataya neden olmayan
.NET 10'da varsayılan olarak etkin Uyarı olarak

Neden

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

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 gizlenecek?

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

Ayrıca bkz.