CA1002: Não expõem listas genéricas
TypeName |
DoNotExposeGenericLists |
CheckId |
CA1002 |
<strong>Categoria</strong> |
Microsoft.design |
Alteração significativa |
Quebrando |
Causa
Um tipo contém um membro visível externamente que é um System.Collections.Generic.List<T> digitar, retorna um System.Collections.Generic.List<T> tipo ou cuja assinatura inclui um System.Collections.Generic.List<T> parâmetro.
Descrição da regra
System.Collections.Generic.List<T>é uma coleção genérica que foi projetada para desempenho e não a herança. System.Collections.Generic.List<T>não contém membros virtuais que tornam mais fácil alterar o comportamento de uma classe herdada. As seguintes coleções genéricas são destinadas a herança e deve ser expostas em vez de System.Collections.Generic.List<T>.
Como corrigir violações
Para corrigir uma violação desta regra, altere o System.Collections.Generic.List<T> o tipo para uma das coleções genéricas que se destina a herança.
Quando suprimir avisos
Não suprimir um aviso da regra, a menos que o assembly que gera este aviso não deve ser uma biblioteca reutilizável. Por exemplo, seria seguro suprimir este aviso em um aplicativo de desempenho ajustado onde um benefício de desempenho foi obtido do uso de listas genéricas.
Regras relacionadas
CA1005: Evitar o excesso parâmetros em tipos genéricos
CA1010: Coleções devem implementar a interface genérica
CA1000: Não é declarar membros estáticos em tipos genéricos
CA1006: Não se aninham tipos genéricos em assinaturas de membro
CA1004: Métodos genéricos devem fornecer o parâmetro de tipo
CA1003: Usar instâncias do manipulador de evento genérico
CA1007: Use genéricos onde for apropriado