Compartir a través de


Introducción al análisis heredado para código administrado en Visual Studio

Visual Studio puede realizar análisis de código administrado de dos maneras: con el análisis heredado, también conocido como análisis estático FxCop de ensamblados administrados, y con los analizadores de código más modernos basados en la Plataforma del Compilador de .NET. En este tema se trata el análisis de legado. Para obtener más información sobre el análisis de código basado en la plataforma del compilador de .NET, consulte Introducción a los analizadores basados en la plataforma del compilador de .NET.

El análisis de código para código administrado analiza ensamblados administrados e informa sobre los ensamblados, como infracciones de las reglas de programación y diseño establecidas en las Directrices de diseño de .NET.

La herramienta de análisis representa las comprobaciones que realiza durante un análisis como mensajes de advertencia. Los mensajes de advertencia identifican los problemas de programación y diseño pertinentes y, cuando es posible, proporcionan información sobre cómo solucionar el problema.

Nota:

El análisis heredado (análisis de código estático) no se admite para proyectos de .NET Core y .NET Standard en Visual Studio. Si ejecuta el análisis de código en un proyecto de .NET Core o .NET Standard como parte de msbuild, verá un error similar al error : CA0055: No se pudo identificar la plataforma para <your.dll>. Para analizar código en proyectos de .NET Core o .NET Standard, use analizadores de código en su lugar.

Integración del IDE (entorno de desarrollo integrado)

Puede ejecutar análisis de código en el proyecto de forma manual o automática.

Para ejecutar el análisis de código cada vez que cree un proyecto, seleccione la opción en la página de propiedades Análisis de código del proyecto. Para obtener más información, vea Cómo: Habilitar y deshabilitar el análisis automático de código.

Para ejecutar el análisis de código manualmente en un proyecto, en la barra de menús elija Analizar>Ejecutar análisis de código>Ejecutar análisis de código en el <proyecto>.

Conjuntos de reglas

Las reglas de análisis de código para código administrado se agrupan en conjuntos de reglas. Puede usar uno de los conjuntos de reglas estándar de Microsoft o puede crear un conjunto de reglas personalizado para satisfacer una necesidad específica.

Suprimir advertencias

Con frecuencia, resulta útil indicar que una advertencia no es aplicable. Esto informa al desarrollador y a otras personas que podrían revisar el código más adelante, que se investigaba una advertencia y, a continuación, se suprimió o se omitió.

La supresión de advertencias en el origen se lleva a cabo mediante atributos personalizados. Para suprimir una advertencia, agregue el atributo SuppressMessage al código fuente como se muestra en el ejemplo siguiente:

[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1039:ListsAreStrongTyped")]
Public class MyClass
{
   // code
}

Para obtener más información, vea Suprimir advertencias.

Nota:

Si migra un proyecto a Visual Studio 2019, es posible que de repente se enfrente a un gran número de advertencias de análisis de código. Si no está listo para corregir las advertencias, puede suprimir todas ellas seleccionando Analizar>Compilar y suprimir problemas activos.

Ejecutar el análisis de código como parte de la política de registro

Como organización, es posible que quiera requerir que todas las comprobaciones cumplan ciertas directivas. En particular, debe asegurarse de que sigue estas políticas:

  • No hay errores de compilación en el código que se está comprobando.

  • El análisis de código se ejecuta como parte de la compilación más reciente.

Puede lograrlo especificando políticas de registro. Para obtener más información, consulte Potenciando la calidad del código con políticas de registro de proyectos.

Integración de construcción en equipo

Puede usar las características integradas del sistema de compilación para ejecutar la herramienta de análisis como parte del proceso de compilación. Para más información, consulte Azure Pipelines.