Share via


CA1059: Los miembros no deben exponer algunos tipos concretos

Elemento Valor
RuleId CA1059
Category Microsoft.Design
Cambio importante Problemático

Causa

Un miembro visible externamente es un determinado tipo concreto o expone determinados tipos concretos a través de uno de sus parámetros o valor devuelto. Actualmente, esta regla informa de la exposición de los siguientes tipos concretos:

Nota

Esta regla está en desuso. Para más información, consulte Reglas en desuso.

Descripción de la regla

Un tipo concreto es un tipo que tiene una implementación completa y, por consiguiente, se pueden crear instancias de él. Para permitir un uso extendido del miembro, reemplace el tipo concreto por la interfaz sugerida. Esto permite al miembro aceptar cualquier tipo que implemente la interfaz o se use donde se espera un tipo que implemente la interfaz.

En la tabla siguiente se enumeran los tipos concretos de destino y sus reemplazos sugeridos.

Tipo concreto Replacement
XPathDocument System.Xml.XPath.IXPathNavigable.

El uso de la interfaz desacopla el miembro de una implementación específica de un origen de datos XML.

Cómo corregir infracciones

Para corregir una infracción de esta regla, cambie el tipo concreto a la interfaz sugerida.

Cuándo suprimir las advertencias

Es seguro suprimir un mensaje de esta regla si se requiere la funcionalidad específica proporcionada por el tipo concreto.

CA1011: Considerar pasar los tipos base como parámetros