Compartilhar via


Removendo 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:

  • 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 Organizarusose, 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 compila, algumas necessárias using as 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.O outro using diretivas, incluindo a duplicata System usando a diretiva, são removidos.

Comentários

Diretivas condicionais de Pre-processor

Remover usos não utilizados remove somente as diretivas não utilizadas e aliases que estão no 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 está no bloco de ativo.

Comentários

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

Opções, Editor de Texto, C#, Avançado

Diretiva using (Referência de C#)

extern alias (Referência de C#)

Conceitos

Organizar usando diretivas

Classificar usos