CA1000: Genel türlerde statik üyeleri belirtme
TürAdı |
DoNotDeclareStaticMembersOnGenericTypes |
CheckId |
CA1000 |
Kategori |
Microsoft.Design |
Bozan Değişiklik |
Bozan |
Sebep
Dışarıdan görünen bir genel tür bir static (Visual Basic içindeShared ) üye içerir.
Kural Tanımı
Bir genel türün bir static üyesi çağırıldığında, tür bağımsız değişkeni tür için belirtilmelidir.Çıkarım desteklemeyen bir genel örnek üyesi çağırıldığında, tür bağımsız değişkeni üye için belirtilmelidir.Bu iki durum içinde tür bağımsız değişkenini belirtmek için sözdizimi farklıdır ve kolayca karıştırılabilir, aşağıdaki çağrıların gösterdiği gibi:
' Shared method in a generic type.
GenericType(Of Integer).SharedMethod()
' Generic instance method that does not support inference.
someObject.GenericMethod(Of Integer)()
// Static method in a generic type.
GenericType<int>.StaticMethod();
// Generic instance method that does not support inference.
someObject.GenericMethod<int>();
Genellikle, önceki bildirimlerin ikisinden de tür bağımsız değişkeninin üye çağırıldığında belirtilmemesi gerekmemesi için kaçınılmalıdır.Bu genel olmayan türler için üye çağrısı sözdiziminden farklı olmayan bir genel türler için üye çağrısı sözdizimi ile sonuçlanır.Daha fazla bilgi için bkz. CA1004: Genel yöntemler tür parametresi sağlamalıdır.
İhlallerin Düzeltilmesi
Bu kuralın bir ihlalini düzeltmek için, statik üyeyi kaldırın ya da onu bir örnek üyesine değiştirin.
Uyarılar Ne Zaman Bastırılmalı
Bu kuraldan bir uyarı gizlemeyin.Genel üyeleri anlaması ve kullanımı kolay bir sözdizimi içinde sağlamak öğrenmek için gereken zamanı azaltıp yeni kitaplıkların kullanılma oranını arttırır.
İlgili Kurallar
CA1005: Genel türlerde aşırı parametrelerden kaçının
CA1010: Koleksiyonlar genel arabirim uygulamalıdır
CA1002: Genel listeleri gösterme
CA1006: Üye imzalarında genel türleri iç içe kullanmayın
CA1004: Genel yöntemler tür parametresi sağlamalıdır
CA1003: Genel olay işleyici örnekleri kullan
CA1007: Uygun yerlerde genel türler kullanın