CA1000: Nedeklarujte statické členy v obecných typech
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ěly 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: Vyhněte se nadbytečným parametrům na obecných typech
CA1010: Kolekce musí implementovat obecné rozhraní
CA1002: Nezveřejňujte obecné seznamy
CA1006: Nevnořujte obecné typy v signaturách členu
CA1004: Obecné metody by měly poskytnout parametr typu
CA1003: Použijte instance obecných obslužných rutin události
CA1007: Použijte obecné typy, kde je to vhodné