Compartir a través de


CA1804: Quitar variables locales no utilizadas

Elemento Valor
RuleId CA1804
Category Microsoft.Performance
Cambio importante Poco problemático

Causa

Un método declara una variable local, pero no usa la variable excepto posiblemente como el destinatario de una instrucción de asignación. Para el análisis de esta regla, el ensamblado probado debe compilarse con la información de depuración y el archivo de base de datos de programa (.pdb) asociado debe estar disponible.

Descripción de la regla

Las variables locales no usadas y las asignaciones innecesarias aumentan el tamaño de un ensamblado y reducen el rendimiento.

Cómo corregir infracciones

Para corregir una infracción de esta regla, quite o use la variable local.

Nota

El compilador de C# quita variables locales sin usar cuando la opción optimize está habilitada.

Cuándo suprimir las advertencias

Suprima una advertencia de esta regla si se emitió la variable. También es seguro suprimir una advertencia de esta regla o deshabilitarla, si el rendimiento y el mantenimiento del código no son los principales problemas.

Ejemplo

En el ejemplo siguiente se muestran varias variables locales sin usar.

using System;
using System.Windows.Forms;

namespace PerformanceLibrary
{
   public class UnusedLocals
   {
      public void SomeMethod()
      {
         int unusedInteger;
         string unusedString = "hello";
         string[] unusedArray = Environment.GetLogicalDrives();
         Button unusedButton = new Button();
      }
   }
}

CA1809: Evitar las variables locales excesivas

CA1811: Evitar código privado al que no se llama

CA1812: Evitar las clases internas sin instancia

CA1801: Revisar parámetros sin utilizar