Compartir a través de


Tutorial: Analizar código administrado en previsión de defectos de código

Actualización: noviembre 2007

En este tutorial, se analizará un proyecto administrado en previsión de defectos de código con la herramienta de análisis de código.

En este tutorial, se describe paso a paso el proceso de utilizar el análisis de código para analizar la conformidad de los ensamblados de código administrado de .NET con las Instrucciones de diseño de Microsoft .NET Framework.

En este tutorial realizará las acciones siguientes:

  • Analizar y corregir las advertencias de defectos del código.

Requisitos previos

Para analizar un proyecto administrado en previsión de defectos de código

  1. En Development Edition, abra la solución ManagedDemo.

  2. Seleccione el proyecto ManagedDemo en el Explorador de soluciones.

  3. En el menú Proyecto, haga clic en Propiedades.

    Se muestra la página de propiedades de ManagedDemo.

  4. Haga clic en Análisis de código.

  5. Seleccione Habilitar análisis de código (define la constante CODE_ANALYSIS).

  6. En el menú Archivo, haga clic en Guardar los elementos seleccionados y, a continuación, cierre las páginas de propiedades de ManagedDemo.

  7. En el menú Generar, haga clic en Generar ManagedDemo.

    Se notificarán las advertencias de generación del proyecto ManagedDemo en las ventanas Lista de errores y Resultados.

Para corregir las infracciones de reglas de los análisis de código

  1. En el menú Ver, haga clic en Lista de errores.

    Dependiendo del perfil del programador seleccionado, quizá deba elegir el comando Otras ventanas del menú Ver y, a continuación, hacer clic en Lista de errores.

  2. En el Explorador de soluciones, haga clic en Mostrar todos los archivos.

  3. A continuación, expanda el nodo Configuración y abra el archivo AssemblyInfo.cs.

  4. Utilice la tabla siguiente para corregir las advertencias:

Advertencias

Para corregir la advertencia

Marcar ensamblados con CLSCompliantAttribute: Microsoft.Design: 'ManagedDemo' debe marcarse como CLSCompliantAttribute y el valor debe ser igual a true.

  1. Agregue el código usingSystem; al archivo AssemblyInfo.cs.

  2. A continuación, agregue el código [assembly: CLSCompliant(true)] al final del archivo AssemblyInfo.cs.

  3. Vuelva a generar el proyecto.

Advertencia del compilador (nivel 1) CS3008.

  1. Cambie el nombre del campo _item a ItemCount.

  2. Modifique public static int item { get { return _item; } } para que se devuelva ItemCount.

  3. Vuelva a generar el proyecto.

Marcar los tipos ISerializable con SerializableAttribute: Microsoft.Usage: Agregar [Serializable] a 'demo' ya que este tipo implementa ISerializable.

  1. Agregue el atributo [Serializable ()] a la clase demo.

  2. Vuelva a generar el proyecto.

Implementar constructores de excepción estándar: Microsoft.Design: Agregue el siguiente constructor a esta clase: public demo(String)

  • Agregue el constructor public demo (String s) : base(s) { } a la clase demo.

Implementar constructores de excepción estándar: Microsoft.Design: Agregue el siguiente constructor a esta clase: public demo(String, Exception)

  • Agregue el constructor public demo (String s, Exception e) : base(s, e) { } a la clase demo.

Implementar constructores de excepción estándar: Microsoft.Design: Agregar el siguiente constructor a esta clase: protected demo(SerializationInfo, StreamingContext)

  1. Agregue el código using System.Runtime.Serialization; al principio del archivo Class1.cs.

  2. A continuación, agregue el constructor protected demo (SerializationInfo info, StreamingContext context) : base(info, context) { } to the class demo..

  3. Vuelva a generar el proyecto.

Implementar constructores de excepción estándar: Microsoft.Design: Agregue el siguiente constructor a esta clase: public demo()

  1. Agregue el constructor public demo () : base() { } a la clase demo.

  2. Vuelva a generar el proyecto.

Los identificadores deberían tener el sufijo correcto: Microsoft.Naming: Cambie el nombre 'testCode.demo' para que termine en 'Exception'.

  • Cambie el nombre de la clase y sus constructores a DemoException.

Los identificadores deberían utilizar las mayúsculas y minúsculas correctamente: Microsoft.Naming: Corrija el uso de mayúsculas y minúsculas del nombre de espacio de nombres 'testCode'

  • Cambie el uso de mayúsculas y minúsculas del espacio de nombres testCode a TestCode.

Los identificadores deberían utilizar las mayúsculas y minúsculas correctamente: Microsoft.Naming: Corrija el uso de mayúsculas y minúsculas del nombre de miembro 'item'.

  • Cambie el nombre del miembro a Item.

Los ensamblados deben tener nombres seguros válidos: Firme 'ManagedDemo' con una clave de nombre seguro.

  1. En el menú Proyecto, haga clic en Propiedades de ManagedDemo.

    Aparecerán las propiedades del proyecto.

  2. Haga clic en Firma.

  3. Active la casilla Firmar el ensamblado.

  4. En la lista Elija un archivo de clave de nombre seguro, seleccione <Nuevo...>.

    Aparecerá el cuadro de diálogo Crear clave de nombre seguro.

  5. En el Nombre del archivo de clave, escriba TestKey.

  6. Escriba una contraseña y haga clic en Aceptar.

  7. En el menú Archivo, haga clic en Guardar los elementos seleccionados y, a continuación, cierre las páginas de propiedades.

  8. Vuelva a generar el proyecto.

Excluir las advertencias de los análisis de código

Para excluir las advertencias sobre defectos del código

  1. Seleccione las advertencias restantes en la Lista de errores y, a continuación, haga clic con el botón secundario y seleccione Suprimir mensajes.

  2. Vuelva a generar el proyecto.

    El proyecto se generará sin advertencias ni errores.