Sdílet prostřednictvím


CA1000: Nelze deklarovat statické členy na obecné typy

Název_typu

DoNotDeclareStaticMembersOnGenericTypes

CheckId

CA1000

Kategorie

Microsoft.design

Změnit rozdělení

Rozdělení

Příčina

Externě viditelné obecný typ obsahuje static (Shared v jazyce Visual Basic) člen.

Popis pravidla

Když static se nazývá člena obecného typu, musí být určen typ argumentu pro typ.Při volání obecný instanci člena, který nepodporuje Odvození argumentu typ musí určit pro člena.Syntaxe určující typ argumentu v obou případech je jiný a snadno zaměnitelný, jak ukazují následující volání:

' 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>();

Obecně oba předchozí prohlášení je nutno, takže není nutné zadat, kdy se nazývá člen argument typu.Výsledkem syntaxi pro volání členů v obecné prvky, které se liší syntaxe obecné typy.Další informace naleznete v tématu CA1004: Obecné metody by měl poskytnout parametr typu.

Jak opravit porušení

Oprava porušení tohoto pravidla, statický člen odebrat nebo změnit na instanci člena.

Při potlačení upozornění

Nepotlačovat upozornění od tohoto pravidla.Poskytování generics v syntaxi, která je snadné pochopení a použití snižuje dobu požadované informace a zvyšuje rychlost přijímání nových knihoven.

Souvisejících pravidel

CA1005: Vyhnout se nadměrnému parametry na obecné typy

CA1010: Kolekce by mělo provádět obecné rozhraní

CA1002: Obecný seznamech neuvádějí.

CA1006: Nelze vnořit obecné typy v podpisech členské

CA1004: Obecné metody by měl poskytnout parametr typu

CA1003: Použít událost obecný popisovač instance

CA1007: Pomocí generics, případně

Viz také

Referenční dokumentace

Generics (Příručka programování C#)