Reglas de portabilidad e interoperabilidad

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

En esta sección

Regla Descripción
CA1401: Los elementos P/Invoke no deben estar visibles Un método público o protegido en un tipo público tiene el atributo System.Runtime.InteropServices.DllImportAttribute (también se implementa por la palabra clave Declare en Visual Basic). No se deberían exponer estos métodos.
CA1416: Validación de la compatibilidad con las plataformas El uso de API dependientes de la plataforma en un componente hace que el código deje de funcionar en todas las plataformas.
CA1417: No usar OutAttribute en parámetros de cadena para P/Invoke Los parámetros de cadena pasados por valor con OutAttribute pueden desestabilizar el entorno de ejecución si la cadena es una cadena internalizada.
CA1418: uso de una cadena de plataforma válida El analizador de compatibilidad de plataformas requiere un nombre y una versión de plataforma válidos.
CA1419: Proporcionar un constructor sin parámetros que sea tan visible como el tipo contenedor para los tipos concretos derivados de "System.Runtime.InteropServices.SafeHandle" Proporcionar un constructor sin parámetros tan visible como el tipo contenedor para un tipo derivado de System.Runtime.InteropServices.SafeHandle permite un mejor rendimiento y 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 usa la serialización en tiempo de ejecución, y la serialización en tiempo de ejecución está deshabilitada explícitamente.
CA1422: Validación de la compatibilidad con 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 puede acceder desde ese sistema operativo (versión).