изменить файл решения в другую папку - PullRequest
36 голосов
/ 31 июля 2010

Как мне изменить папку моего существующего файла решения (sln)?

Это прямо сейчас внутри одной из папок моего проекта;если я разрезаю файл решения и вставляю его в корневую папку, он не загружает ни один из моих проектов.

Ответы [ 8 ]

38 голосов
/ 13 марта 2013

Откройте обозреватель решений в Visual Studio и выберите решение.
Нажмите Файл> Сохранить MyProject.sln As ...
и выберите новое местоположение.

29 голосов
/ 31 июля 2010

Файл решения - это просто текстовый файл.Вы должны быть в состоянии переместить его и затем отредактировать, чтобы убедиться, что все относительные пути, на которые есть ссылки в файле, являются правильными.

Я также смог щелкнуть правой кнопкой мыши файл решения в обозревателе решений изатем используйте save-as, чтобы сохранить его в другом месте.Это, кажется, не всегда работает для меня.

9 голосов
/ 22 февраля 2012

Откройте пустое решение, сохраните его в том месте, куда вы хотите переместить. Затем добавьте «Существующий проект» и выберите файл Old.sln, чтобы добавить все проекты в старый файл решения.

5 голосов
/ 30 ноября 2011

Мне просто нужно было сделать это с некоторыми унаследованными проектами, которые я унаследовал, поэтому подумал, что это может стоить документировать ...

После обновления с решения VS 2005 я заметил, что файл решения находится на том же уровне, что ифайлы проекта.Наш стандарт состоит в том, чтобы файл решения был на один уровень выше.

Undesired location of solution file.

Открывая файл решения в «Блокноте», я вижу следующее:

Unchanged Solution file opened in notpad.

Добавьте требуемый относительный путь к каждому пути проекта и сохраните в правильном месте:

В моем случае, чтобы вызвать один уровень 'BloombergPriceRequestService \'

SO строки проекта будут выглядеть следующим образом:

Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BloombergPaydownService", "BloombergPaydownService\BloombergPaydownService.csproj", "{17DDDD3E-CD39-48B4-BE3F-71E550FCBBFC}"
EndProject
Global

Не забудьте удалить старый файл решения!I have moved the solution file up one level

2 голосов
/ 31 июля 2010

если я вырезал файл sln и вставил его корневая папка, она не загружает мои проекты

Сделайте это в любом случае и попробуйте открыть решение. Он скажет вам, что некоторые проекты не могут быть загружены: проигнорируйте предупреждение.

Затем удалите все проекты из решения. После этого щелкните правой кнопкой мыши решение и выберите Add => Existing project и перейдите к файлу проекта. Повторите для всех проектов в вашем решении.

1 голос
/ 08 июня 2015

Иногда файл решения может содержать более 5 проектов , прикрепленных к нему.

В этом случае создание нового решения и добавление к нему проектов является громоздким и занимает больше времени.

Вы можете просто отредактировать файл решения для правильной загрузки проектов.

Шаги, которые нужно сделать

СОУ 1. Откройте файл решения в блокноте или любом текстовом редакторе. 2. обновите путь, который подчеркнут и выделен жирным шрифтом.

Project ("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BloombergPaydownService", " BloombergPaydownService \ BloombergPaydownService.csproj ", "17DDD", 17DD 48B4-BE3F-71E550FCBBFC} "

  1. Сохраните файл и откройте в Visual studio.
0 голосов
/ 07 июня 2017

Есть два способа сделать это:

  1. Просто удалите весь проект и снова создайте весь проект в другой папке (что не рекомендуется).
  2. Вот шаги, которые нужно выполнить, не пропуская ни одного файла.

    а. Goto Source control explorer Создайте новую папку или просто переместите решение, в которое вы хотите переместить папку.

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

    с. Как только мы загрузим решение, вы увидите, что проект, который вы переместили, не будет загружен (так как мы переехали в другую папку)

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

    е. Я уверен, что если вы добавите nugetPackages, они не загрузятся.

    е. Перейти к файлообменнику конкретного проекта откройте файл .csproj и попробуйте проверить расположение пакетов, состояние ошибки, ссылку на проект и импорт, а также отдельно от них, если таковые имеются Которые указывают на каталог.

    г. Самый простой способ - просто добавить пакет nuget и посмотреть, какой путь генерирует Visual Studio.

    ч. После того, как мы изменим расположение, они будут загружены в ссылках

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

    J. Добавьте ссылку на проект в любое время после перемещения файлов

    к. Теперь сборка будет успешной.

0 голосов
/ 14 июня 2012

Редактирование файла решения - опасный способ сделать что-то, и я нашел лучший способ. Просто создайте новое решение и добавьте в проект копии папок, содержащих различные проекты (в соответствующих папках).

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