Как удалить проект в visual studio
В Visual Studio 2012 и TFS, как удалить проект из решения, не добавляя «удаление файла csproj» в список ожидающих изменений. Я просто хочу удалить ссылку из этого решения, но проект все еще должен существовать, поскольку он используется в других решениях. Если я просто удалю его из решения, а затем зафиксирую изменение, он удалит файл csproj!
Как правильно удалить проект из решения без удаления TFS файла csproj?
2 ответа
Я сегодня тоже наткнулся на это. Изучив варианты, мне удалось:
1) Выгрузка проекта, который я хотел удалить
2) Щелкните проект правой кнопкой мыши и выберите «Удалить».
Я не могу понять, почему MS удалила параметр «Удалить», но могу только предположить, что это было связано с «рефакторингом» пользовательского интерфейса в 2012 году. Интересно, есть ли в состоянии «загружено» горячая клавиша, чтобы избежать нужно сначала выгрузить проект .
Не для того, чтобы разглагольствовать о контекстных меню VS IDE, но ИМХО они все еще слишком загромождены. Хотя я не фанат подменю, в данном случае они крайне необходимы. Это усугубляется моей самой большой жалобой, заключающейся в том, что относительный порядок и даже иерархия параметров в разных контекстах могут сильно отличаться для одинаковых параметров. Хотя я могу понять, что сами варианты должны быть разными и, следовательно, иметь различный приоритет в данном контексте, если вы собираетесь делиться вариантами между двумя контекстами, они должны быть по крайней мере в относительной близости. Лучший пример - «Контроль версий» в VS2013. В контексте редактора файлов он находится внизу списка, но в контексте решения он находится посередине и имеет некоторые параметры SC в верхнем меню, а не в подменю. Поскольку многие из них с меньшей вероятностью будут выполнять SC-операции из редактора файлов (хотя я делаю много), переместите его в конец списка, чтобы он соответствовал относительному местоположению из контекста решения.
В любом случае хватит моей тирады .
Remove должен просто удалить его из файла решения. если он все еще хочет удалить его, отмените отложенное удаление для проекта, но зафиксируйте изменение файла решения. это должно оставить файл проекта в источнике, но удалить его из решения
Окно инструментов Обозревателя решений можно использовать для создания решений и проектов и управления ими, а также для просмотра кода и работы с ним. В этой статье мы подробно рассмотрим параметры пользовательского интерфейса, которые помогут вам делать это.
Этот раздел относится только к Visual Studio в Windows.
Окно инструментов
Окно инструментов содержит следующие элементы пользовательского интерфейса.
- Строка меню, в которой можно управлять отображением файлов
- Строка поиска, где можно искать определенные файлы и типы файлов
- Главное окно, в котором можно просматривать файлы, проекты, решения и управлять ими
- Узел решений , где можно управлять решениями.
- Узел проектов , где можно управлять проектами.
- Узел зависимостей, где можно управлять зависимостями решения и проекта
- Узел программы, где можно просматривать, изменять программу или приложение, а также управлять ими
- Вкладка изменений Git , где можно использовать Git и GitHub в Visual Studio для совместной командной работы над проектами
Если вы не видите окно инструментов Обозревателя решений, его можно открыть, выбрав Вид > Обозреватель решений в строке меню Visual Studio или нажав сочетание клавиш Ctrl+Alt+L.
Строка меню
Теперь давайте подробнее рассмотрим строку меню Обозревателя решений.
Строка меню содержит следующие элементы пользовательского интерфейса (слева направо).
Контекстное меню
В Обозревателе решений есть несколько параметров, с которыми можно взаимодействовать с помощью контекстного меню, открываемого правой кнопкой мыши. Отображаемые контекстные параметры зависят от того, какой узел выбран: Решение или Проект.
Параметры контекстного меню узла "Решение"
Параметры контекстного меню узла "Проект"
Всплывающее меню "Добавить" в контекстном меню
В контекстном меню Обозревателя решений одним из самых полезных параметров является всплывающее меню Добавить. С его помощью можно добавить еще один проект в решение. Кроме того, можно добавить элемент в проект и многое другое.
Открыть всплывающее меню Добавить можно из узлов Решение, Проект или Зависимости. Его пункты зависят от узла.
Руководство по добавлению элементов и проектов с помощью контекстного меню в Обозревателе решений см. в статье Общие сведения о проектах и решениях.
Из этой статьи вы узнаете, как создавать с нуля и использовать проекты Visual Studio для хранения артефактов, необходимых для создания приложений. Если вы не знакомы с проектами в Visual Studio, см. этот обзор проектов и решений. Сведения о том, как быстро создать проект на основе шаблона, см. в разделе Создание проекта на основе шаблона.
Проекты содержат объекты, необходимые для создания приложения в Visual Studio, например файлы исходного кода, растровые изображения, значки, а также ссылки на компоненты и службы. Когда вы создаете проект, Visual Studio создает решение, в котором будут содержаться проекты. После этого в решение при необходимости можно добавить другие новые или существующие проекты. Можно также создавать пустые решения. Решения также могут содержать файлы, не связанные с определенным проектом.
Этот раздел относится к Visual Studio в Windows. Информацию о Visual Studio для Mac см. в статье Создание проектов в Visual Studio для Mac.
Решения и проекты можно просматривать в окне инструментов, которое называется обозревателем решений. На приведенном ниже снимке экрана показан пример решения в обозревателе решений (BikeSharing.Xamarin-UWP), который содержит два проекта: BikeSharing.Clients.Core и BikeSharing.Clients.Windows. Каждый проект включает в себя несколько файлов, папок и ссылок. Полужирным шрифтом выделено имя запускаемого проекта. Этот проект выполняется при запуске приложения. Вы можете выбрать запускаемый проект.
Вы можете создать проект самостоятельно, добавив в него необходимые файлы, однако в Visual Studio также предлагается ряд шаблонов, помогающих быстро приступить к работе. Используя шаблон, вы получаете проект, который уже содержит все основные компоненты для проекта данного типа. Вы можете переименовывать файлы, как вам требуется, а также добавлять новый или существующий код и другие ресурсы.
Имейте в виду, что для разработки приложений в Visual Studio необязательно использовать проекты и решения. Вы можете просто открыть код, клонированный из GIT или скачанный из другого места. Дополнительные сведения см. в статье Разработка кода в Visual Studio без использования проектов и решений.
Создание проекта из шаблона проекта
Сведения о том, как выбрать шаблон для создания нового проекта, см. в статье Создание проекта в Visual Studio. А пример проекта и решения, созданного с нуля, а также пошаговые инструкции и пример кода см. в статье Общие сведения о проектах и решениях.
Создание проекта из существующих файлов с текстом программ
Если у вас есть коллекция файлов исходного кода, вы можете легко добавить их в проект.
Последовательно выберите Файл > Создать > Project From Existing Code (Проект из существующего кода).
В мастере создания проекта по существующим файлам с кодом выберите в раскрывающемся списке Задать тип проекта нужный тип проекта, а затем нажмите Далее.
В мастере перейдите к месту хранения файлов и введите имя нового проекта в поле Имя. По завершении нажмите кнопку Готово.
Добавление файлов в решение
Если у вас есть файлы, которые относятся к нескольким проектам, например файл сведений для решения или иные файлы, которые относятся к уровню решения, а не отдельного проекта, их можно добавить в само решение. Чтобы добавить элемент в решение, щелкните правой кнопкой мыши узел решения в Обозревателе решений и выберите в контекстном меню пункты Добавить > Новый элемент или Добавить > Существующий элемент.
Файл решения представляет собой структуру для организации проектов в Visual Studio. Он содержит состояние этих сведений в двух файлах: SLN (текстовый файл, общий) и SUO (двоичный, скрытый, параметры решения для конкретного пользователя). Таким образом, решение — это не ресурс, который нужно копировать и переименовывать; вместо этого лучше создать новое решение, а затем добавить в него существующие элементы.
Создание пустых решений
Вы также можете создавать пустые решения, не содержащие проектов. Это может быть предпочтительно, если вы хотите создать решение и проекты с нуля.
Создание пустого решения
В области слева (Шаблоны) щелкните в раскрывающемся списке Другие типы проектов > Решения Visual Studio.
В средней области выберите Пустое решение.
Введите значение Имя и Расположение для решения, а затем нажмите ОК.
В поле поиска на странице Создание проекта введите решение.
Выберите шаблон Пустое решение и нажмите кнопку Далее.
Введите значение Имя и Расположение для решения, а затем нажмите Создать.
После создания пустого решения к нему можно добавить новые или существующие проекты или элементы, выбрав пункт Добавить новый элемент или Добавить существующий элемент в меню Проект.
Как было сказано ранее, вы также можете открывать файлы кода без использования проекта или решения. Сведения о разработке кода таким образом см. в статье Разработка кода в Visual Studio без использования проектов и решений.
Создание временного проекта
Чтобы создать временный проект, сначала выберите Сервис > Параметры > Проекты и решения > Общие, а затем снимите флажок Сохранять новые проекты в момент создания. После этого откройте диалоговое окно Новый проект, как обычно.
Удаление решения, проекта или элемента
Контекстное меню можно использовать для удаления решений, проектов или элементов в Visual Studio, но только, чтобы удалить их из текущего решения или проекта.
Чтобы полностью удалить решение или другой компонент из системы, удалите папку, содержащую файлы SLN и SUO решения, используя проводник Windows. (Перед удалением решения вы, возможно, захотите выполнить резервное копирование проектов и файлов на случай, если они вам понадобятся позже).
SUO-файл является скрытым и не отображается, если проводник имеет параметры по умолчанию. Для отображения скрытых файлов в меню Вид проводника установите флажок Скрытые элементы.
Окончательное удаление решения
Вы можете перейти к проводнику в Windows, используя Обозреватель решений в Visual Studio. Ниже описывается порядок действий.
В Обозревателе решений щелкните правой кнопкой мыши меню (контекстное меню) решение, которое вы хотите удалить, и выберите Открыть папку в проводнике.
В проводнике перейдите на один уровень вверх.
Выберите папку, содержащую решение, и нажмите клавишу DELETE.
Процедуры, описанные в этом разделе, используются для построения, перестроения или очистки всех или некоторые проектов или элементов проекта в решении. Пошаговые инструкции см. в разделе Пошаговое руководство. Построение приложения.
Этот раздел относится к Visual Studio в Windows. Информацию о Visual Studio для Mac см. в статье Создание и очистка проектов и решений в Visual Studio для Mac.
Пользовательский интерфейс в вашем выпуске Visual Studio может отличаться от приведенного в этом разделе в зависимости от ваших текущих параметров. Чтобы изменить параметры, например на Общие или Visual C++, выберите Сервис > Импорт и экспорт параметров, а затем щелкните Сбросить все параметры.
Сборка, перестроение или очистка всего решения
В обозревателе решений откройте решение или выберите нужное решение.
В строке меню выберите Сборка, а затем одну из следующих команд.
Выберите Собрать или Собрать решение либо нажмите клавиши CTRL+SHIFT+B, чтобы скомпилировать только те файлы и компоненты проекта, которые были изменены с момента последней сборки.
Если решение содержит несколько проектов, команда Собрать меняется на Собрать решение.
Выберите Перестроить решение, чтобы очистить решение, а затем собрать все файлы и компоненты проекта.
Выберите Очистить решение, чтобы удалить промежуточные и выходные файлы. После этого, когда останутся только файлы проекта и компонентов, можно собрать новые экземпляры промежуточных и выходных файлов.
Сборка или перестроение одного проекта
В обозревателе решений выберите или откройте решение.
В строке меню щелкните Собрать, а затем выберите либо Собрать Имя_проекта, либо Перестроить Имя_проекта.
Выберите Собрать Имя_проекта, чтобы выполнить сборку только тех компонентов проекта, которые были изменены с момента последней сборки.
Выберите Перестроить Имя_проекта, чтобы очистить проект, а затем выполнить сборку файлов проекта и всех его компонентов.
Сборка только запускаемого проекта и его зависимостей
В строке меню выберите Сервис > Параметры.
В диалоговом окне Параметры разверните узел Проекты и решения и выберите страницу Сборка и запуск.
Откроется диалоговое окно Сборка и запуск > Проекты и решения > Параметры.
Установите флажок При выполнении построить только запускаемые проекты и зависимости.
Если этот флажок установлен, при выполнении любого из указанных далее действий выполняется сборка только текущего запускаемого проекта и его зависимостей.
В строке меню выберите Отладка > Начать (или F5).
В строке меню последовательно выберите Сборка > Собрать решение (или CTRL+SHIFT+B).
Если этот флажок снят, все проекты, их зависимости и файлы решения создаются при выполнении любой предыдущей команды.
Сборка только выбранного проекта Visual C++
Выберите проект C++, а затем в строке меню выберите Сборка > Только проект и одну из следующих команд:
Только собрать Имя_проекта
Только перестроить Имя_проекта
Только очистить Имя_проекта
Только связать Имя_проекта
Эти команды применяются только к выбранному проекту C++ без сборки, перестроения, очистки или связывания зависимостей проектов и файлов решения. В зависимости от используемой версии Visual Studio подменю Только проект может содержать дополнительные команды.
Компиляция нескольких элементов проекта C++
В обозревателе решений выберите несколько файлов со скомпилированными действиями, откройте контекстное меню для одного из этих файлов, а затем выберите Компилировать или нажмите клавиши CTRL+F7.
Если файлы имеют зависимости, они будут скомпилированы в порядке зависимостей. Операция компиляции завершится ошибкой, если файлам требуется предкомпилированный заголовок, который недоступен при компиляции. Операция компиляции использует текущую активную конфигурацию решения.
Остановка сборки
Выполните одно из следующих действий.
В строке меню выберите Сборка > Отменить.
Мне просто интересно, возможно ли в различных версиях Visual Studio автоматически удалять все ссылки из проекта, которые никогда не использовались?
В своем ответе укажите, к какой версии VS применяется решение.
Обычно интересно, приводит ли удаление этих DLL к заметному улучшению времени сборки или чему-то еще? (Конечно, кроме удаления избыточных зависимостей) - monish001 24 дек.
@ monish001 - каждая сборка и актив увеличивает площадь развертывания и является еще одним предметом для управления / поддержки или потенциальным источником ошибок. - StingyJack 23 авг.
Если у вас установлен Resharper (плагин), вы можете получить доступ к функции, которая позволяет анализировать использованные ссылки через Обозреватель решений> (щелкните правой кнопкой мыши) Ссылки> Оптимизировать ссылки .
Эта функция неправильно обрабатывает:
- Внедренные сборки зависимостей
- Динамически загружаемые сборки (Assembly.LoadFile)
- Сборки собственного кода, загружаемые через взаимодействие
- Элементы управления ActiveX (COM-взаимодействие)
- Другие творческие способы загрузки сборок
Хотя это жизнеспособный способ сделать это, «в различных версиях Visual Studio» для меня означает не что-то еще, а уже «внутри» - Mark Schultheiss 06 марта '20 в 18:34
Расширение Resharper сделает это за вас.
Это расширение поддерживает Visual Studio с 2005 по 2017 год.
Хотя компилятор не будет включать неиспользуемые сборки, посторонние операторы using и ссылки замедляют работу Visual Studio и Intellisense, поскольку инструменты должны учитывать больше кода.
что один нашел много неиспользованных ссылок в нашем проекте - но куча из них действительно используется . Так что я не доверяю Resharper ссылками - Offler 27 марта '14 в 13: 342014-03-27 10:34
Resharper потребляет тонны памяти в больших проектах, когда есть много ссылок, которые в конечном итоге приводят к сбою VS - Cemre Mengü 16 апр '14 в 21:01
Редакции @eraj VS Express не поддерживают расширения, получите бесплатную редакцию Community, которая поддерживает такие расширения, как ReSharper. - codemonkeh 23 июня '15 в 5: 142015-06-23 05:14
Пит, любой автоматизированный инструмент может перехитрить. Особенно в эпоху зависимостей DI и PCL, которые кажутся невыполненными, могут понадобиться, но вряд ли это вина инструмента. Вместо того, чтобы делать снимок экрана, вы должны использовать программное обеспечение для контроля версий. Современная система, такая как Git или Hg, позволит вам часто проверять локально, поэтому вы никогда не потеряете работу. - Mathieson 28 авг.
Насколько я могу судить, Resharper показывает неиспользуемые пространства имен, а не ссылки на сборки, что, как я думаю, означает вопрос «неиспользуемые ссылки из проекта». Я бы хотел найти и последнее - Sonic Soul 7 марта '16 в 21:36
Вы можете попробовать бесплатное расширение VS2010: Справочный помощник от группы Lardite. У меня он отлично работает. Этот инструмент помогает найти неиспользуемые ссылки и позволяет выбрать, какие ссылки следует удалить.
Не работает с проектом MVC. Он удаляет важные DLL, такие как .Helpers и .WebPage - User.Anonymous 1 сен '14 в 16:00
Все, что вам нужно, это камень и голый сустав, тогда вы сможете делать это, как пещерный человек.
- Удалите неиспользуемые пространства имен (для каждого класса)
- Запустить отладочную сборку
- Скопируйте ссылки на исполняемый файл и оставшееся пространство имен в новое место.
- Запустите исполняемый файл
- Произойдет ошибка отсутствия ссылочной библиотеки DLL
- Скопируйте необходимую DLL из папки Debug
- Повторить 4-6
- Гу Гу Га Га?
- Брось свой камень
Вы также можете положиться на свои инструменты сборки, чтобы узнать, какая ссылка по-прежнему требуется. Это эпоха VS 2017, пещерный человек все еще выжил.
Ха-ха, ничего плохого в том, чтобы немного юмора здесь. Подход Стоунмана действительно выглядит так, как будто без дорогостоящей версии Enterprise - это то, что у нас есть прямо сейчас. - Nicholas Petersen 13 мая '19 в 20:22
Если вы хотите знать, какой проект (сборка) зависит от других сборок, вы можете использовать NDepend .
В VS 2008/2010 есть пункт меню, вызываемый правой кнопкой мыши, для удаления или сортировки использований. - JohnB 25 авг.
@JohnB: Конечно, вы правы, но его вопрос касается ссылок (на сборки), а не использования (пространств имен). - Jehof 26 авг.
Для Visual Studio 2013/2015/2017 есть расширение, которое делает именно то, что вам нужно: ResolveUR . В основном это:
- ссылка удалена в проекте
- проект скомпилирован с помощью msbuild
- проверить на наличие ошибок сборки
- восстановить удаленные ссылки, если были ошибки сборки.
только что установил его для VS 2017 Community Edt. - пока работает нормально. - Thomas 31 мая '17 в 21:30
он говорит, что есть ошибка сборки, но при сборке нет ошибки сборки, поэтому она не работает vs2015 comm edtion - Raghavendra 9 авг.
2,5 из 5 звезд на Visual Studio Marketplace из 52 отзывов меня немного оттолкнули - ECH 13 сен '18 в 8:54
Пробовал его в проекте MVC, и он предлагает удалить несколько жизненно важных зависимостей, таких как System.Web.Helpers, поэтому я не хочу, чтобы он работал сам по себе. - Jahaziel 11 ноя '19 в 17:17
В Visual Studio версий 2017 и 2015 вы можете сделать это с помощью функции карты кода , но эта функция доступна только в версии Enterprise Edition , но не в версиях Community или Professional .
Щелкните правой кнопкой мыши узел проекта в проводнике решений и выберите «Показать на карте кода». Это отобразит ваш .dll как единственный узел на пустом графике. Щелкните правой кнопкой мыши этот узел в карте кода и выберите «Показать сборки, ссылки на которые есть». Это добавит дополнительный узел под названием «Внешние элементы», который можно развернуть, чтобы отобразить только те сборки, на которые действительно есть ссылки.
Если у вас есть версия Enterprise и этот параметр в контекстном меню не отображается, вам необходимо установить функцию «Карта кода» из установщика VS на панели «Отдельные компоненты». - StingyJack 23 авг.
Хороший, спасибо @Glenn. Я просто хочу сказать, что у меня использовался Micosoft.Office.Interop.Excel, и он не был указан среди других ссылок, поэтому все же нужно быть немного осторожным. - Emil Filip 02 авг.
Читайте также: