Visual Studio переместить проект в другую папку - PullRequest
164 голосов
/ 12 апреля 2010

Как переместить проект в другую папку в Visual Studio? Я привык к этой структуре в моих проектах.

-- app
---- Project.Something
---- Project.SomethingElse

Я хочу переименовать все пространство имен SomethingElse в SomethingNew, как лучше всего это сделать (не заходя в файл .sln вручную)?

Ответы [ 10 ]

184 голосов
/ 10 июня 2011

Я попытался предложить удалить и повторно добавить проект, но тогда исправление зависимостей может быть проблемой.

Я использую этот подход:

  1. Переместить папку проекта.
    • Если проект находится в управлении исходным кодом, выполните перемещение с помощью команд управления исходным кодом.
  2. Редактировать файл решения в текстовом редакторе. Должен быть только один путь, который нужно изменить.
148 голосов
/ 12 апреля 2010

Удалите проект из вашего решения, щелкнув его правой кнопкой мыши в окне обозревателя решений и выбрав Удалить. Переместите всю папку проекта, включая подкаталоги, куда вы хотите. Добавьте проект обратно в ваше решение.

Имена пространств имен - это нечто совершенно другое, просто отредактируйте исходный код.

42 голосов
/ 18 ноября 2013
  1. Закройте ваше решение в VS2012
  2. Переместите ваш проект на новое место
  3. Откройте ваше решение
  4. Выберите проект, который не удалось загрузить
  5. В окне инструмента Свойства есть редактируемая запись «Путь к файлу», которая позволяет вам выбрать новое местоположение проекта
  6. Установить новый путь
  7. Щелкните правой кнопкой мыши по проекту и нажмите перезагрузить
2 голосов
/ 21 июля 2018

У меня была такая же проблема.Я решил переместить ссылки и менее чем за 15 минут, без изменения ссылок.

Для меня решение было простым:

  1. Переместите ваши файлы туда, где вам нужно.
  2. Удалить папку с именем .vs.Должно быть как невидимая папка.
  3. Откройте файл решения (.sln) с помощью простого редактора, такого как note или notepad ++.
  4. Измените ссылку, где находится ваш файл, используя следующую структуру: ifВы помещаете свой проект в ту же папку, удаляете предыдущую папку или ссылку ".. \";если вы поместили в вышеупомянутую папку, добавьте ссылку ".. \" или имя папки.
  5. Сохраните файл с изменениями.
  6. Откройте файл проекта (.csproj) исделайте то же самое, удалите или добавьте ссылку.
  7. Сохраните изменения.
  8. Откройте файл решения.

Примеры:

В решениифайл (.sln)

  • Оригинал: Проект ("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PATH1.UI", " ScannerPDF \ PATH1.UI \ PATH1.UI.csproj "," Проект {A26438AD-E428-4AE4-8AB8-A5D6933E2D7B} "(" {FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} ") =" PATH1.DataService ", " ScannerPDF \ PATH1.DataService \ PATH1.DataService.csproj", "{ED5A561B-3674-4613-ADE5-B13661146E2E}"

    Новый: Проект ("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PATH1.MX.UI", "PATH1.MX.UI \ PATH1.UI.csproj", "{A26438AD-E428-4AE4-8AB8-A5D6933E2D7B}"Project ("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PATH1.DataService", "PATH1.DataService \ PATH1.DataService.csproj "," {ED5A561B-3674-4613-ADE5-B13661146E2E} "

В файле проекта:

  • Оригинал:

    Новое:

    Исходная ссылка: .... \ lib \ RCWF \ 2018.1.220.40 \ TelerikCommon.dll

    Новая ссылка: .. \ lib \ RCWF \ 2018.1.220.40 \ TelerikCommon.dll

2 голосов
/ 26 сентября 2017

То, что на самом деле работало для меня, было:

  1. Удалить проект из решения.
  2. Редактировать файл проекта с помощью текстового редактора.
  3. Обновить все относительные пути к "пакетам". В моем случае пришлось изменить ".. \ packages" на "...... \ packages", так как я переместил проект в более глубокую папку.
  4. Загрузите проект обратно в решение.

Надеюсь, это поможет.

1 голос
/ 28 августа 2014

Это просто в VS2012; просто используйте функцию сопоставления изменений:

  1. Создайте папку, в которую вы хотите переместить решение.
  2. Регистрация всех файлов проекта (если вы хотите сохранить изменения) или откат всех извлеченных файлов.
  3. Закройте решение.
  4. Откройте Проводник управления исходным кодом.
  5. Щелкните правой кнопкой мыши решение и выберите «Дополнительно -> Удалить сопоставление ...»
  6. Измените значение «Локальная папка» на значение, которое вы создали на шаге 1.
  7. Выберите «Изменить».
  8. Откройте решение, дважды щелкнув его в проводнике управления версиями.
0 голосов
/ 03 июля 2019

Я хотел, чтобы изменения в Git отображались как перемещения / переименования вместо удаления и добавления. Итак, я сделал комбо из вышеперечисленного и этот пост .

mkdir subdirectory
git mv -k ./* ./subdirectory
# check to make sure everything moved (see below)
git commit

И откорректируйте пути к проектам и сборкам из Pugg nuget в файле sln с помощью текстового редактора.

0 голосов
/ 06 февраля 2019

Я понял эту попытку, это сработало для меня.

В Visual Studio 2017 Community Edition он создает проект по этому пути. "C: \ Users \ метка \ источник \ Repos \ мипмапы \ мипмапов" Это создаст доступ к файлу, в котором отказано в выдаче

Теперь вы можете это исправить.

закройте ваш визуальный студийный процесс. Затем найдите свой проект и скопируйте папку проекта Но сначала создайте подпапку «Именованные проекты» внутри вашей папки visual studio 2017 в документах. Затем вставьте папку проекта в папку проекта Visual Studio 2017, а не в основную папку Visual Studio 2017, она должна находиться в подпапке «Проекты». Далее перезапустите Visual studio 2017 Затем выберите Open project Solution Затем найдите свой проект, который вы вставили в папку Visuals 2017 Projects. Затем очистите проект и перестройте его, он должен просто скомпилироваться и скомпилироваться. Надеюсь, это помогло кому-нибудь еще. Не совсем понятно, почему Microsoft думала, что создание ваших проектов по пути, для которого нужны разрешения на запись, мне не подходит.

0 голосов
/ 20 апреля 2017

В VS 2015

  1. Выгрузите ваш проект в обозревателе решений
  2. Создать новое решение
  3. Скопируйте проекты в папку нового решения
  4. Щелкните правой кнопкой мыши решение, добавьте существующий проект.
  5. Если вы используете какой-либо фреймворк, например MVC, вам может потребоваться добавить ссылку в диспетчер ссылок.
0 голосов
/ 16 декабря 2015

Группируйте связанные проекты вместе, используя папки решений

См. http://msdn.microsoft.com/en-us/library/vstudio/c6c756s6(v=vs.100).aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...