Compartilhar via


Não expõem listas genéricas

TypeName

DoNotExposeGenericLists

CheckId

CA1002

Category (Categoria)

Microsoft.Design

Quebrando alterar

Quebrando

Causa

Um tipo contém um membro visível externamente que é um System.Collections.Generic.List<T> Digite retorna uma 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 projetada para desempenho não herança e, portanto, não contém nenhum membro virtual. As seguintes coleções genéricas são destinadas a herança e devem ser expostas em vez de System.Collections.Generic.List<T>.

Como corrigir violações

Para corrigir uma violação dessa regra, altere o System.Collections.Generic.List<T> Digite para uma das coleções genéricas projetadas para herança.

Quando suprimir avisos

Elimina um aviso da regra, a menos que o assembly que dispara 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 com o uso de listas genéricas.

Regras relacionadas

Evitar o excesso parâmetros em tipos genéricos

Coleções devem implementar a interface genérica

Não declarará membros estático tipos genéricos

Não se aninham tipos genéricos em assinaturas de membro

Métodos genéricos devem fornecer o parâmetro de tipo

Usar instâncias de manipulador do evento genérico

Use genéricos onde for apropriado

Consulte também

Referência

Generics (Guia de programação C#)