Удаление неиспользуемых директив Using
Параметр Удалить неиспользуемые директивы Usings в пользовательском интерфейсе Visual Studio позволяет удалить директивы using, псевдонимы using, а также неиспользуемые в исходном коде псевдонимы extern.Существует два способа вызова операции.
Главное меню: В меню Правка наведите на пункт IntelliSense, затем Организовать директивы и выберите пункт Удалить неиспользуемые директивы Usings.
Контекстное меню: В любой области редактора кода щелкните правой кнопкой мыши, наведите на пункт Организоватьдирективы и выберите Удалить неиспользуемые директивы Usings.
Примечание Если выполнить команду Удалить неиспользуемые директивы Usings в не построенном исходном коде, могут быть удалены некоторые нужные директивы using.
В приведенном далее примере показан результат выполнения команды Удалить неиспользуемые директивы Usings для исходного кода.
До |
После |
---|---|
|
|
В предыдущем примере далее в исходном коде используется только System.Другие директивы using, в том числе копия директивы Using System, удаляются.
Заметки
Условные директивы препроцессора
Команда Удалить неиспользуемые директивы Usings удаляет только неиспользуемые директивы и псевдонимы, расположенные в активном блоке.Следующий пример демонстрирует это поведение.
До |
После |
---|---|
#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); } } } |
В предыдущем примере System.Text и System.Linq не используются.При этом удаляется только System.Linq, так как System.Text не находится в активном блоке.
Комментарии
Команда Удалить неиспользуемые директивы Usings удаляет примечание только в том случае, если оно расположено между маркерами удаляемой директивы или псевдонима.Комментарии до маркеров или после них не затрагиваются.Следующий пример демонстрирует это поведение.
До |
После |
---|---|
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"); } } } |
В предыдущем примере удаляется System.Linq.Будут удалены только те комментарии, которые расположены между маркерами директивы.
См. также
Ссылки
"Параметры", "Текстовый редактор", C#, "Дополнительно"
Директива using (Справочник по C#)
Псевдоним extern (Справочник по C#)