Платформа решения visual studio что это

Обновлено: 03.07.2024

Мне нужно изменить целевую структуру для всех проектов. У меня много решений с сотнями проектов.

Что-нибудь новое здесь или мне нужно менять каждый проект?

Вы можете сделать это с помощью макроса Скотта Дормана Visual Studio, доступного на CodeProject:

Ниже приведен код, загрузите его в свою <UserProfile>\Documents\Visual Studio 2010\Projects\VSMacros80\MyMacros папку, откройте IDE макросов Visual Studio (Alt-F11) и добавьте его как существующий элемент в проект «MyMacros»:

+1 за код, потому что ссылка на CodeProject больше не работает. Для работы в VS 2013 требуется всего лишь одно изменение номера версии в vsixmanifest Для VS2015: скачать, разархивировать в vsixmanifest: изменить версию InstallationTarget на 14.0 и зависимость на 4.6 В галерею загружена новая версия с поддержкой VS2015 и 4.6.

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

Это именно то, что я искал. Самое элегантное и гибкое решение для изменения всех этих файлов .proj. Для меня миграция изменяет файлы проекта, app.configs и дизайнеров

Всегда есть простое. Приличный текстовый редактор, такой как notepad ++, будет включать функцию поиска / замены в файлах. Просто найдите строку текущей версии в файлах csproj / vbproj:

и заменить на новую версию

Хорошая идея сначала проверить .

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

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

Есть примечание о том, что у него есть проблемы с Win7, но я этого не испытывал.

Пошаговые инструкции в этом инструменте:

  1. Заменить | Добавить группу | Назовите его (например, "Моя группа")
  2. Щелкните правой кнопкой мыши MyGroup | Добавить файлы).
  3. Выберите источник (например, используйте папку, перейдите в корневую папку проектов, которые вы хотите изменить)
  4. При необходимости установите фильтр включаемых файлов (например, * .csproj)
  5. Щелкните правой кнопкой мыши строку под исходным текстом | Расширенное редактирование .
  6. Введите свое регулярное выражение в текстовое поле поиска (например, <TargetFrameworkVersion>.*</TargetFrameworkVersion> )
  7. Выберите «Поиск по регулярному выражению» в поле со списком под текстом поиска.
  8. Введите текст замены (например <TargetFrameworkVersion>4.0</TargetFrameworkVersion> )
  9. Выберите настройки «Место назначения» и «Резервное копирование» (по умолчанию будет создана резервная копия)
  10. Начать замену (Ctrl + R)

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

Вы также можете нацеливать приложения на различные платформы. Дополнительные сведения см. в разделе Настройка для различных версий.

Функции нацеливания на платформу

Среди прочего, доступны следующие возможности нацеливания на платформу:

При открытии проекта, который ориентирован на более раннюю версию платформы, Visual Studio может автоматически обновить его или оставить имеющуюся настройку.

При работе над проектом, ориентированным на более раннюю версию платформы, Visual Studio динамически изменяет среду разработки, как показано ниже:

Фильтрует элементы в диалоговых окнах Добавить новый элемент, Добавить новую ссылку и Добавление ссылки на службу, чтобы пропустить варианты, которые недоступны в целевой версии.

Фильтрует пользовательские элементы управления на панели элементов, чтобы удалить те из них, которые недоступны в целевой версии, и отобразить только наиболее актуальные элементы, если доступно несколько элементов управления.

Фильтрует IntelliSense, чтобы пропустить языковые функции, которые недоступны в целевой версии.

Фильтрует свойства в окне Свойства, чтобы пропустить те, которые недоступны в целевой версии.

Фильтрует пункты меню, чтобы пропустить те, которые недоступны в целевой версии.

Для сборок система использует версию и параметры компилятора, которые подходят для целевой версии.

Выбор целевой версии платформы

Раскрывающийся список платформ в Visual Studio 2017

Раскрывающийся список платформ в Visual Studio 2019

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

В левом столбце окна Свойства перейдите на вкладку Приложение.

Вкладка "Приложения" со свойствами проекта

В списке Целевая рабочая среда выберите требуемую версию.

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

В зависимости от целевой платформы ее можно представить в файле проекта следующим образом:

Разрешение системных ссылок и пользовательских ссылок на сборки

Дополнительные сведения о ссылках на сборки см. в разделе Разрешение сборок во время разработки.

В отличие от простейших программ, таких как "Hello World", большинство приложений состоит из нескольких исходных файлов. Это обстоятельство порождает массу проблем, в частности, как назвать файлы, где их разместить и можно ли их использовать повторно. В интегрированной среде разработки Visual Studio принята концепция решения (solution), состоящего из ряда проектов, которые в свою очередь состоят из ряда элементов, благодаря которой разработчики могут работать с исходными файлами. Интегрированная среда разработки имеет множество встроенных инструментов, позволяющих упростить этот процесс, обеспечив разработчикам доступ к большей части их приложений. Далее рассматриваются структура решений и проектов, доступные типы проектов и способы настройки их конфигурации.

Структура решения

Работая с системой Visual Studio, пользователь открывает решение. При повторном редактировании специальных файлов создается временное решение, которое можно уничтожить по окончании работы. Однако решение позволяет управлять текущими файлами, поэтому в большинстве случаев его сохранение означает, что пользователь может вернуться к тому, что он делал накануне, и вновь открыть файлы, с которыми он работал.

Наиболее распространенным способом структурирования приложений в среде Visual Studio является одно отдельное решение, содержащее много проектов. Каждый проект можно создать из набора исходных файлов и папок. Главное окно, в котором пользователь работает с решениями и проектами, называется Solution Explorer:

Окно Solution Explorer среды Visual Studio

Для организации работы с исходным кодом и предотвращения его ассоциации с приложениями (за исключением веб-приложений, в которых существуют специальные папки, имеющие особое предназначение в данном контексте) используются папки (folders). Некоторые разработчики используют имена папок, соответствующие пространствам имен, которым принадлежат классы. Например, если класс Person находится в папке DataClasses в проекте FirstProject, то полностью квалифицированное имя класса может выглядеть как FirstProject.DataClasses.Person.

Папки решения (solution folders) - полезный способ организации проектов в большом решении. Они отображаются только в окне Solution Explorer - физически в файловой системе их не существует. Такие действия, как Build или Unload, можно легко выполнять над всеми проектами, включенными в папку решения. Для того чтобы разгрузить окно Solution Explorer, папки решения могут быть свернуты или скрыты.

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

Папка Miscellaneous Files - это специальная папка решения, которую можно использовать для того, чтобы следить за тем, какие еще файлы, не являющиеся частью какого-либо проекта в решении, были открыты в системе Visual Studio. По умолчанию папка Miscellaneous Files скрыта. Для того чтобы сделать ее видимой, следует выполнить команду Tools --> Options --> Environment --> Documents --> Show Miscellaneous Files.

Несмотря на то что формат файла решения, принятый в предыдущих версиях, не изменился, в системе Visual Studio 2010 открыть файл решения, созданный в версии Visual Studio 2013, невозможно.

Кроме информации о файлах, содержащихся в приложении, файлы решения и проектов могут содержать и другие записи, например, о том, как именно должен быть скомпилирован конкретный файл, об установках проекта, о ресурсах и многом другом. Система Visual Studio 2013 имеет немодальное диалоговое окно для редактирования свойств проекта, в то время как свойства решения по-прежнему открываются в отдельном окне. Как и следовало ожидать, свойствами проекта считаются те свойства, которые относятся только к данному проекту, например информация о сборке и связях, а свойства решения определяют общую конфигурацию для сборки приложений.

Формат файла решения

Система Visual Studio 2013 фактически создает для решения два файла, имеющих расширения .suo и .sln (solution file). Первый - это довольно неинтересный бинарный файл, который сложно редактировать. Он содержит информацию, специфичную для пользователя, например, какие файлы были открыты, когда решение закрывалось в последний раз и где находились контрольные точки. Этот файл скрыт, поэтому он не должен появляться в папке решения при использовании Windows Explorer, если не снять с него соответствующую метку.

Иногда файл .suo оказывается поврежденным, и это вызывает непредсказуемые последствия при сборке и редактировании приложений. Если при работе с конкретным решением система Visual Studio становится нестабильной, необходимо выйти из нее и удалить файл с расширением .suo. Он будет создан заново системой Visual Studio, когда решение будет открыто в следующий раз. Файл решения с расширением .sln содержит информацию о решении, например список проектов, конфигурации сборки и другие настройки, не специфичные для проекта. В отличие от многих файлов, используемых в системе Visual Studio 2013, файл решения не является XML-документом. Он хранит информацию в блоках, как показано в следующем примере:

В этом примере решение состоит из трех проектов (GettingStarted, Information Services и Reference Library), а раздел Global содержит настройки, которые применяются к решению. Например, само решение будет видимым в окне Solution Explorer, потому что настройка HideSolutionNode установлена равной FALSE. Если изменить ее на TRUE, имя решения не будет отображаться в системе Visual Studio.

Свойства решения

Для того чтобы открыть диалоговое окно Properties, необходимо щелкнуть правой кнопкой мыши на узле Solution в окне Solution Explorer и выбрать команду Properties. Это диалоговое окно содержит два узла: Common properties и Configuration properties, как показано на рисунке ниже:

Свойства решения в Visual Studio

Более подробно узлы Common properties и Configuration properties описываются в следующих разделах.

Узел Common Properties

Определяя проект Startup Project для приложения, пользователь имеет три возможности, которые являются практически очевидными. Выбор Current Selection запускает проект, который в данный момент находится в фокусе окна Solution Explorer. Вариант Single Startup гарантирует, что каждый раз будет запускаться один и тот же проект. Эта установка задается по умолчанию, поскольку большинство приложений имеют только один стартовый проект. Последний вариант, Multiple Startup Projects, позволяет запускать несколько проектов в определенном порядке. Это может быть полезным при работе с приложением клиент/сервер в рамках одного решения, причем требуется, чтобы и клиент, и сервер выполнялись одновременно. При выполнении нескольких проектов важно контролировать порядок их запуска. Для управления порядком запуска проектов можно использовать навигационные кнопки, расположенные после списка проектов.

Раздел Project Dependencies используется для того, чтобы задавать другие проекты, от которых зависит конкретный проект. В большинстве случаев система Visual Studio сама управляет этими свойствами, когда пользователь добавляет или удаляет связи между проектами и данным проектом. Однако иногда пользователь может самостоятельно создать связи между проектами, чтобы они собирались в заданном порядке. Система Visual Studio использует этот список зависимостей, для того чтобы определить порядок сборки проектов. Окно этого раздела предотвращает неосторожное добавление циклических связей и удаление необходимых зависимостей между проектами.

В разделе Debug Source Files можно создать список каталогов, в которых система Visual Studio может искать исходные файлы при отладке. Этот список задается по умолчанию и просматривается перед открытием диалогового окна Find Source. Кроме того, пользователь может перечислить исходные файлы, которые система Visual Studio не должна искать. Если щелкнуть на кнопке Cancel в момент, когда система предлагает найти конкретный исходный файл, то он будет добавлен в этот список.

Раздел Code Analysis Settings доступен только в версии Visual Studio Team Suite. Это позволяет выбирать набор правил статического анализа кода, которые будут применяться к конкретному проекту. Более подробно раздел Code Analysis обсуждается далее.

Узел Configuration Properties

И проекты, и решения имеют конфигурации для сборки, определяющие, какие элементы должны быть собраны и почему. Это может сбить пользователя с толку, потому что на самом деле между конфигурацией проекта, определяющей, как должны собираться элементы, и конфигурацией решения, определяющей, какие проекты должны быть собраны, нет никакой корреляции, кроме случаев, когда они имеют одинаковые имена. Новое решение определит конфигурации Debug и Release (решения), что эквивалентно сборке всех проектов в решении с помощью конфигураций Debug и Release (проекта).

Например, может быть создана новая конфигурация решения Test, состоящая из двух проектов: MyClassLibrary и MyClassLibraryTest. Когда пользователь создает свое приложение в конфигурации Test, он хочет, чтобы проект MyClassLibrary был собран в режиме Release, чтобы тестировать его в виде, максимально приближенном к окончательной версии. Однако, чтобы проверить тестируемый код, необходимо собрать тестовый проект в режиме Debug.

Когда пользователь собирает проект в режиме Release, он не хочет, чтобы решение Test было собрано или развернуто вместе с приложением. В данном случае в конфигурации решения Test можно указать, что пользователь хочет, чтобы проект MyClassLibrary был собран в режиме Release, а проект MyClassLibraryTest вообще не собирался.

Пользователь может легко переключаться между этими конфигурациями с помощью меню Configuration стандартной инструментальной панели. Однако, переключаться между платформами не так легко, потому что меню Platform нет ни в одной инструментальной панели. Для того чтобы сделать ее доступной, необходимо выбрать команду View --> Toolbars --> Customize. Затем элемент Solution Platforms из категории Build на закладке Command можно перетащить на инструментальную панель.

Следует отметить, что, выбрав узел Configuration Properties в диалоговом окне Solution Properties, как показано на рисунке ниже, можно получить доступ к раскрывающимся спискам Configuration и Platform. Раскрывающийся список Configuration содержит все доступные конфигурации решения: Debug и Release (заданные по умолчанию), Active и All Configurations. Аналогично в раскрывающемся списке Platform перечислены все доступные платформы. Как только пользователь получит доступ к этим раскрывающимся спискам, он может на этой же странице задать настройки для каждой конфигурации и/или платформы. Для того чтобы добавить новые конфигурации и/или платформы для решения, пользователь может также использовать кнопку Configuration Manager.

Раздел Configuration Properties в окне свойств решения

При добавлении новых конфигураций решения существует возможность (предусмотренная по умолчанию) создания соответствующих конфигураций для существующих проектов (по умолчанию все проекты будут собираться в новой конфигурации решения), а также возможность создать новую конфигурацию на основе существующих. Если флажок Create Project Configurations установлен и новая конфигурация основана на существующей, то новые конфигурации проекта будут копировать конфигурации проекта, заданные для существующей конфигурации.

Возможности, доступные для создания новых платформенных конфигураций, ограничены типами доступных центральных процессоров: Itanium, x86 и x64. Новая платформенная конфигурация также может основываться на существующих платформенных конфигурациях, и существует возможность создания платформенной конфигурации для проекта.

В конфигурационном файле решения можно также задать тип центрального процессора, для которого оно собирается. Это особенно удобно, если нужно развернуть приложение для компьютеров с 64-битовой архитектурой. Установить настройки для всех этих решений можно непосредственно в контекстном меню, которое открывается после щелчка правой кнопкой мыши на узле Solution node в окне Solution Explorer. В то время как команда Set Startup Projects открывает окно конфигурации решения, команды Configuration Manager, Project Dependencies и Project Build Order открывают окно Configuration Manager and Project Dependencies. Команды Project Dependencies и Project Build Order отображаются в окне, только если решение состоит из нескольких проектов.

Команда Project Build Order открывает окно Project Dependencies и перечисляет порядок сборки, как показано на рисунке ниже:

Окно Project Dependencies

Закладка Build Order демонстрирует порядок, в котором должны собираться проекты в соответствии с зависимостями между ними. Это может оказаться полезным, если пользователь поддерживает ссылки на бинарные сборки проектов, а не ссылки на проекты. Кроме того, эту возможность можно использовать для двойной проверки того, что проекты будут собраны в правильном порядке.

Где скачать и сколько стоит Visual Studio?

При этом, для работы вам доступно три редакции IDE:

  1. Community
  2. Professional
  3. Enterprise

Редакция Community предоставляется абсолютно бесплатно. При этом, на сайте Microsoft относительно этой редакции сказано дословно следующее:

Для организаций: Visual Studio Community может использовать неограниченное число пользователей в организации в следующих случаях: в учебных аудиториях, для научных исследований или участия в проектах с открытым кодом. Для всех прочих сценариев использования: в некорпоративных организациях Visual Studio Community могут использовать до 5 пользователей. В корпоративных организациях (в которых используется более 250 ПК или годовой доход которых превышает 1 млн долларов США) использование запрещено, за исключением случаев, перечисленных выше (открытый код, научные исследования и учебные аудитории).

Знакомство с Visual Studio

Создание нового проекта


По мере того, как вы будете использовать Visual Studio, в левой части этого окна будут появляться ссылки на ваши последние проекты для того, чтобы можно быстро их открыть и начать работу.


Перед вами откроется новое окно создания проекта, которое по умолчанию выглядит вот так:

Для того, чтобы быстро находить необходимый вам шаблон проекта, доступны фильтры по языку программирования, платформе и типам проектов:

В результате, вы увидите в списке шаблонов всего два шаблона проектов:

На втором шаге нас попросят ввести:

  • Имя проекта
  • Расположение проекта
  • Имя решения
  • и выбрать платформу

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

О том, какие файлы располагаются по умолчанию в директории с проектом, мы поговорим позже, когда познакомимся с устройством Visual Studio, а пока перейдем к дальнейшему изучению IDE.

Основные окна в Visual Studio

После того, как мы создали первый проект консольного приложения для Windows, перед нами откроется основное окно Visual Studio с примерно таким содержимым:

В целом, для тех, кто работал в RAD Sudio, внешний вид окна Visual Studio не должен вызвать никаких проблем, хотя здесь есть и свои значительные отличия. Итак, что у нас есть:


Для консольного приложения эта панель пустая и не содержит ничего, кроме подсказки:


Далее идёт привычное нам окно исходного кода с вкладками под каждый модуль проекта. Так как у нас один модуль, то и вкладка пока у нас в окне кода одна:

В правой части окна IDE расположены следующие окна:

Обозреватель решений



Соответственно, если выбрать в списке, например, метод Main, то этот метод будет выделен в окне с исходным кодом проекта.

Team Explorer


Здесь вы можете создать подключение, например, к репозиторию Git или GitHub. С содержимым этого окна и работой с репозиториями мы поговорим позднее.

Представление классов


Свойства


Средства диагностики

Окно расположено в правой части экрана и предоставляет нам различные средства для профилирования нашего приложения. Так, например, можно отследить загрузку ЦП, использование памяти и т.д.

В принципе, для первого знакомства с основными окнами Visual Studio информации достаточно. Теперь попробуем создать наше первое приложение.

Первое приложение в Visual Studio

Напишем следующий код для метода Main:

Чтобы приложение закрылось достаточно нажать любую клавишу на клавиатуре.

При написании кода нашей программы вы, возможно, заметили, что справа в окне исходного кода периодически появляется вот такой значок:


Таким образом Visual Studio предлагает нам какие-либо улучшения исходного кода. Например, вы можете увидеть эту лампочку, если подниметесь в самый верх исходного кода:

Применяем предложенное решение и IDE сама удалит лишний строки из модуля и наша программа станет выглядеть вот так:

Читайте также: