CA2256: Üst arabirimlerde bildirilen tüm üyelerin DynamicInterfaceCastableImplementation-attributed arabiriminde bir uygulaması olmalıdır

Özellik Değer
Kural Kimliği CA2256
Başlık Üst arabirimlerde bildirilen tüm üyelerin DynamicInterfaceCastableImplementation-attributed arabiriminde bir uygulaması 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

DynamicInterfaceCastableImplementationAttribute içeren bir arabirimde uygulanmamış bir üye bulunmaktadır.

Kural açıklaması

DynamicInterfaceCastableImplementationAttribute ile atanan türler, IDynamicInterfaceCastable türünü uygulayan tür için bir arabirim işlevi görür. Sonuç olarak, devralınan arabirimlerde tanımlanan tüm üyelerin bir uygulamasını sağlaması gerekir, çünkü IDynamicInterfaceCastable'i uygulayan tür aksi takdirde bunları sağlamayacaktır.

İhlalleri düzeltme

Eksik arabirim üyelerini uygulayın.

Example

interface IParent
{
    void ParentMethod();
}

// This interface violates the rule.
[DynamicInterfaceCastableImplementation]
interface IBadChild : IParent
{
    static void ChildMethod()
    {
        // ...
    }
}

// This interface satisfies the rule.
[DynamicInterfaceCastableImplementation]
interface IGoodChild : IParent
{
    static void ChildMethod()
    {
        // ...
    }

    void IParent.ParentMethod()
    {
        // ...
    }
}

Hatalar ne zaman bastırılacak?

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

Ayrıca bkz.