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:
- Tipo derivado de System.Xml.XmlNode.
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.
Reglas relacionadas
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de