Compartir a través de


Reglas de portabilidad e interoperabilidad

Las reglas de portabilidad admiten la portabilidad en distintas plataformas. Las reglas de interoperabilidad admiten la interacción con los clientes COM.

En esta sección

Regla Descripción
CA1401: P/Invokes no deben ser visibles Un método público o protegido en un tipo público tiene el atributo System.Runtime.InteropServices.DllImportAttribute (también implementado por la palabra clave Declare en Visual Basic). Estos métodos no deben exponerse.
CA1416: validar la compatibilidad de la plataforma El uso de API dependientes de la plataforma en un componente hace que el código ya no funcione en todas las plataformas.
CA1417: No usar OutAttribute en parámetros de cadena para P/Invokes Los parámetros de cadena pasados por valor con el OutAttribute pueden desestabilizar el tiempo de ejecución si la cadena es una cadena internada.
CA1418: uso de una cadena de plataforma válida El analizador de compatibilidad de plataforma requiere un nombre de plataforma y una versión válidos.
CA1419: proporcione un constructor sin parámetros que sea tan visible como el tipo contenedor para tipos concretos derivados de "System.Runtime.InteropServices.SafeHandle" Proporcionar un constructor sin parámetros que sea tan visible como el tipo contenedor para un tipo derivado de System.Runtime.InteropServices.SafeHandle permite mejorar el rendimiento y el uso con soluciones de interoperabilidad generadas por el origen.
CA1420: La propiedad, el tipo o el atributo requiere serialización en tiempo de ejecución El uso de características que requieren serialización en tiempo de ejecución cuando esta está deshabilitada produce excepciones en tiempo de ejecución.
CA1421: El método usa la serialización en tiempo de ejecución cuando se aplica DisableRuntimeMarshallingAttribute. Un método utiliza el encapsulamiento en tiempo de ejecución, y el encapsulamiento en tiempo de ejecución está deshabilitado explícitamente.
CA1422: validar la compatibilidad de la plataforma No se recomienda llamar a una API obsoleta en un sistema operativo determinado (versión) desde un sitio de llamada al que se pueda acceder desde ese sistema operativo (versión).