Remover usos não utilizados

O Remover usos não utilizados remove a opção na interface de usuário do Visual Studio using diretivas, using aliases, e extern aliases que não são usados no código fonte. Há duas maneiras para chamar a operação:

  • O Menu principal - na Editar , aponte para IntelliSense, aponte para Organizar usose em seguida, clique em Remover usos não utilizados.

  • Menu de contexto - o botão direito do mouse em qualquer lugar dentro do editor de código, aponte para Organizar usose em seguida, clique em Remover usos não utilizados.

    ObservaçãoObservação

    Se você executar Remover usos não utilizados no código-fonte que não criam, algumas necessárias using diretivas podem ser removidas.

O exemplo a seguir mostra o resultado da execução de Remover usos não utilizados no código-fonte.

Antes de

Após

using System;
using System.Linq;
using System.Collections.Generic;
using System.Text;
using System;
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("test");
        }
    }
}
using System;
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("test");
        }
    }
}

No exemplo anterior, apenas System é usado posteriormente no código fonte. Outro using diretivas, incluindo a duplicata System usando a diretiva, são removidos.

Remarks

Diretivas condicionais de Pre-processor

Remover usos não utilizados remove somente as diretivas não utilizadas e aliases de bloco de ativo. O exemplo a seguir ilustra esse comportamento:

Antes de

Após

#define DEBUG

#if DEBUG

using System;

using System.Collections.Generic;

using System.Linq;

#else

using System.Text;

#endif

namespace ConsoleApplication1

{

class Program

{

static void Main(string[] args)

{

List<int> myList = new List<int> { 1, 2, 3 };

Console.WriteLine(myList);

}

}

}

#define DEBUG

#if DEBUG

using System;

using System.Collections.Generic;

#else

using System.Text;

#endif

namespace ConsoleApplication1

{

class Program

{

static void Main(string[] args)

{

List<int> myList = new List<int> { 1, 2, 3 };

Console.WriteLine(myList);

}

}

}

No exemplo anterior, ambos System.Text e System.Linq não são usados. No entanto, apenas System.Linq será removida porque System.Text não no bloco ativo.

Comments

Remover usos não utilizados remove um comentário somente se o comentário é entre os tokens de uma diretiva ou alias que será removido. Comentários que aparecem antes ou depois não são afetados. O exemplo a seguir ilustra esse comportamento:

Antes de

Após

using System;

/* Comment before remains */

using /* Comment between removed */ System.Linq;

// Comment after remains

namespace ConsoleApplication1

{

class Program

{

static void Main(string[] args)

{

Console.WriteLine("My Example");

}

}

}

using System;

/* Comment before remains */

// Comment after remains

namespace ConsoleApplication1

{

class Program

{

static void Main(string[] args)

{

Console.WriteLine("My Example");

}

}

}

No exemplo anterior, System.Linq é removido. Somente os comentários entre os tokens da diretiva serão removidos.

Consulte também

Referência

Avançado, C#, Editor de texto, caixa de diálogo de opções

usando diretiva (referência de TRANSLATION FROM VPE FOR CSHARP)

extern <>alias>(TRANSLATION FROM VPE FOR CSHARP Reference)

Conceitos

Organizando Expressões Using

Classificar usos