Как принудительно открыть файл решения (SLN) в Visual Studio 2013?


попытка открыть решение VS 2012 (файл SLN) явно в VS 2013 завершается успешно. Просто дважды щелкнув его в Проводнике Windows, вы все равно откроете его в VS 2012.

Я читал " Visual Studio 2012 не преобразует решение vs2010? и последовало предложение " сохранить как..."файл решения.

по-прежнему он открывается в VS 2012 по умолчанию.

мой вопрос:

Как изменить файл SLN, чтобы принудительно открыть его в Visual Studio 2013?

6 99

6 ответов:

The показывает предназначены версия как одна из ранних линий - например:

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2013

или:

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012

однако - он может только использовать это, если приложение по умолчанию для .sln файлы-это "селектор версий Microsoft Visual Studio". Это не редкость для значения по умолчанию .sln приложение а конкретные версия. В windows 8:

enter image description here

вы можете сказать, что по умолчанию, потому что он говорит "продолжайте использовать":

enter image description here

enter image description here

обратите внимание, что вы также можете принудительно обновить a .sln или .proj файл с помощью командной строки, где devenv является целевой версией IDE:

devenv "MyProject.sln" /upgrade

пример:

"%programfiles(x86)%\Microsoft Visual Studio 12.0\Common7\IDE\devenv.exe" "D:\Source\MySolution.sln" /upgrade

обратите внимание, что это не открывает Visual Studio. Альтернативой является, из среды IDE, выберите "Сохранить как" для вашего файла решения и перезаписать или сохранить решение под новым именем.

подробнее: http://msdn.microsoft.com/en-us/library/w15a82ay.aspx

похоже, у OP уже есть рабочий ответ ... но для меня проблема была в другом. У меня было решение VS 2012 (несколько на самом деле) и я хотел преобразовать их в 2013 (что, как я понимаю, является тривиальным изменением .sln-файл, но я хотел, чтобы это было сделано автоматически, если бы была какая-то секретная логика обновления, о которой я не знал).

поэтому я подумал, что открою его в VS2013, он автоматически обновится, как ожидалось, а затем я буду настроен на двойной щелчок по решению и просмотр его в VS2013 идти вперед. Но открытие в VS2013 не обновляло решение для меня автоматически, как ожидалось, и я не мог найти явный способ принудительного обновления после открытия файла в VS2013. Я мог бы работать с решением, сохранить мои изменения и закрыть VS2013, но .sln останется неизменным и не модернизированным.

оказывается, моя проблема была в том, что я открываю решение ... по привычке я нажимаю Правой Кнопкой Мыши файлы и выбираю "открыть с помощью", чтобы выбрать программу, которую я хочу использовать для открытия папка. Я делаю это часто. Обратите внимание, что я не говорю об изменении программы по умолчанию "открыть с помощью", а просто открываю файл с определенной программой Один раз. Поэтому я бы щелкнул Правой Кнопкой Мыши .sln файл... откройте с помощью Visual Studio 2013 ... и ничего не будет обновляться.

В конце концов я решил зайти в VS2013, затем сделать Файл > Открыть и выбрать .sln файл (это чуждо мне, так как я вряд ли когда-нибудь открыть что-нибудь таким образом, может быть, вы так же). Во всяком случае, это обновило файл решения немедленно.

после обновления, строки 2-3 части .sln файл изменен с этого:

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012

для этого:

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2013
VisualStudioVersion = 12.0.30501.0
MinimumVisualStudioVersion = 10.0.40219.1

Итак, из моего опыта, чтобы автоматически обновить VS2012 .sln для VS2013, вы должны открыть VS2013 и выберите.sln из диалогового окна Файл > Открыть. Использование оболочки проводника для принудительного выполнения .файл sln для открытия в VS2013 не вызывает логику обновления (по-видимому).

Как дальнейшее Примечание, я протестировал с другим решением, и после принятия изменения через Configuration Manager (который, очевидно, "касается".sln file) он обновил VS2012 до VS2013, даже после того, как открыл его с помощью правой кнопки мыши.

У меня было решение, которое ранее было успешно обновлено с 2010 по 2013 год, но все же показало .sln как связанный с 2010.

Я проверил все методы, приведенные в этом потоке и единственный, который успешно исправил .sln должен был открыть только Visual Studio 2013, затем открыть решение, которое все еще было связано с 2010 в IDE, а затем использовать [файл] > [сохранить (имя).СЛН, а], чтобы перезаписать существующий .sln файл.

установка файла assoc .sln, чтобы быть "селектором версий Visual Studio", не изменился, и решение продолжало открываться в 2010 году.

devenv (имя).метод sln / upgrade не внес никаких изменений в мой.sln файл.

взлом необработанного текста .sln файл поврежден и не открывать вообще.

чтобы решить эту проблему, я просто изменил следующие строки .sln file:

Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010

в эти:

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2013

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

Это может работать для читателей, пытающихся обновить файл решения до Visual Studio 2015. (Я обновил решение VS 2012.)

  1. откройте решение в VS 2015.
  2. Добавить новый проект в решение. (Я добавил тестовый проект.)
  3. удалить проект.
  4. сохранить решение.

вы можете удалить удаленную папку проекта в это время, так как Шаг 3 не удалил его.

Это сработало для меня, когда ни zumey это, ни ТСС это ответы сделал.

EDIT

Метро Смурф был похожий, но более простой ответ, чем мой для аналогичный вопрос. Его шаги были:

  1. открыть решение в VS 2015
  2. щелкните правой кнопкой мыши решение > добавить > Новая папка решения (имя не имеет значения)
  3. сохранить решение
  4. удалить вновь добавленное решение папка
  5. сохранить решение