Compartilhar via


Os membros não devem expor certos tipos concretos

TypeName

MembersShouldNotExposeCertainConcreteTypes

CheckId

CA1059

Category (Categoria)

Microsoft.Design

Quebrando alterar

Quebrando

Causa

Um membro visível externamente é um determinado tipo concreto ou expõe determinados tipos concretos por meio de um de seus parâmetros ou valor retornado.Atualmente, essa regra relatórios exposição dos seguintes tipos concretos:

Descrição da regra

Um tipo concreto é um tipo que possui uma implementação completa e, portanto, pode ser instanciado.Para permitir o uso difundido do membro, substitua o tipo concreto interface sugerida.Isso permite que o membro aceitar qualquer tipo que implementa a interface ou ser usado onde um tipo que implementa a interface é esperado.

A tabela a seguir lista os tipos de concretos-alvo e suas substituições sugeridas.

Tipo concreto

Substituição

XmlNode- ou -XPathDocument

System.Xml.XPath.IXPathNavigable.

Usando a interface dissocia o membro a partir de uma implementação específica de uma fonte de dados XML.

Como corrigir violações

Para corrigir uma violação dessa regra, altere o tipo concreto à interface sugerida.

Quando suprimir avisos

É seguro eliminar uma mensagem a partir desta regra se for necessária a funcionalidade específica fornecida pelo tipo concreto.

Regras relacionadas

Considere passando tipos base sistema autônomo parâmetros