Общие сведения о конфигурациях сборок
Область применения:Visual Studio Visual Studio для Mac
Visual Studio Code ![]()
Конфигурации сборок требуются для создания проектов с разными параметрами. Например, отладка и выпуск — это конфигурации сборки, а при их создании используются разные параметры компилятора. Одна конфигурация является активной и отображается на панели команд в верхней части интегрированной среды разработки.


Этот раздел относится к Visual Studio в Windows. Информацию о Visual Studio для Mac см. в статье Конфигурации сборки в Visual Studio для Mac.
Параметры «Конфигурация» и «Платформа» позволяют определить, где будут храниться выходные файлы сборки. Как правило, когда в Visual Studio выполняется сборка проекта, выходные данные помещаются во вложенную папку проекта с именем активной конфигурации (например, bin/debug/x86). Но это можно изменить.
Вы можете создавать свои конфигурации сборки на уровне решения и проекта. Конфигурация решения определяет, какие проекты включаются в сборку, когда эта конфигурация активна. В сборку будут включены только проекты, указанные в активной конфигурации решения. Если в Configuration Manager выбрано несколько целевых платформ, будут построены все проекты, которые применяются к этой платформе. Конфигурация проекта определяет, какие параметры сборки и компилятора используются при сборке проекта.
Чтобы создать, выбрать, изменить или удалить конфигурацию, можно использовать Configuration Manager. Чтобы открыть его, выберите в строке меню Сборка>Configuration Manager или просто введите Configuration в поле поиска. Можно также использовать список Конфигурации решения на панели инструментов Стандартные, чтобы выбрать конфигурацию или открыть Configuration Manager.

Если вы не можете найти параметры конфигурации решения на панели инструментов и не сможете получить доступ к Configuration Manager, это может быть связано с тем, что вы используете параметры разработки Visual Basic. Дополнительные сведения см. в разделе Управление конфигурациями сборок с применением параметров разработчика Visual Basic.
По умолчанию конфигурации отладки и выпуска включаются в проекты, созданные с помощью шаблонов Visual Studio. Конфигурация Debug поддерживает отладку приложения, а конфигурация Release создает версию приложения, которое можно развернуть. Дополнительные сведения см. в пошаговом руководстве по настройке конфигураций отладки и выпусков. Можно также создать пользовательские конфигурации решений и проектов. Дополнительные сведения см. в разделе Практическое руководство. Создание и изменение конфигураций.
Конфигурации решения
Конфигурация решения указывает, как следует создавать и развертывать проекты в решении. Чтобы изменить конфигурацию решения или определить новую конфигурацию в Configuration Manager, в меню Активная конфигурация решения щелкните Изменить или Создать.
Каждая запись в поле Контексты проекта в конфигурации решений представляет проект в решении. Для каждой комбинацииАктивная конфигурация решения и Активная платформа решения можно задать способ использования каждого проекта.
При определении новой конфигурации решения и выборе поля «Создание конфигураций проектов» проверка Visual Studio создает новую конфигурацию проекта во всех проектах. Аналогичным образом, при определении новой платформы решения и выборе поля «Создание новых платформ проектов» проверка Visual Studio создает новый параметр платформы во всех проектах. Кроме того, если добавить проект, предназначенный для новой платформы, Visual Studio добавляет эту платформу в список платформ решений и делает платформу доступной в качестве варианта во всех проектах. Параметры каждого проекта можно изменить, если платформы не нужны или поддерживаются некоторыми проектами.
Активная конфигурация решения также предоставляет контекст для IDE. Например, если вы работаете над проектом и конфигурация указывает, что он будет создан для мобильного устройства, на панели инструментов отобразятся только элементы, которые можно использовать в проекте мобильного устройства.
Конфигурации проекта
Параметры сборки и компилятора, используемых при сборке проекта определяют конфигурация и целевая платформа. В проекте могут быть разные параметры для каждой комбинации конфигурации и платформы. Чтобы изменить свойства проекта, откройте контекстное меню проекта в обозревателе решений и щелкните Свойства. В верхней части вкладки Сборка конструктора проектов выберите активную конфигурацию, чтобы изменить параметры сборки.


Как Visual Studio связывает конфигурации проектов с конфигурациями решений
При определении новой конфигурации решения и не копируйте параметры из существующего, Visual Studio использует следующие критерии, чтобы связать существующие конфигурации проекта с новой конфигурацией решения. Критерии оцениваются в следующем порядке.
- Если у проекта есть имя конфигурации (имя> платформы конфигурации), соответствующее имени новой конфигурации решения, используется эта конфигурация. В именах конфигураций не учитывается регистр.
- Если у проекта есть имя конфигурации, в котором часть имени конфигурации соответствует новой конфигурации решения, используется ли эта конфигурация, совпадает ли часть платформы.
- Если совпадения по-прежнему нет, используется первая конфигурация, указанная в проекте.
Как Visual Studio связывает конфигурации решений с новыми конфигурациями проекта
При создании конфигурации проекта (в Configuration Manager путем выбора пункта Создать в раскрывающемся меню столбца Конфигурация для этого проекта) и установке флажка Создать новые конфигурации решений Visual Studio ищет конфигурацию решения с таким же именем, чтобы создать проект на каждой поддерживаемой платформе. В некоторых случаях Visual Studio переименовывает существующие конфигурации решения или определяет новые.
Visual Studio использует следующие критерии для связывания конфигураций решений с конфигурациями проекта:
- Если конфигурация проекта не указывает платформу или указывает только одну платформу, будет найдена или добавлена конфигурация решения, имя которой совпадает с именем новой конфигурации проекта. Имя по умолчанию этой конфигурации решения не включает имя платформы; он принимает имя>конфигурации проекта формы
- Если проект поддерживает несколько платформ, для каждой поддерживаемой платформы будет найдена или добавлена конфигурация решения. Имя каждой конфигурации решения включает имя конфигурации проекта и имя платформы, а также имя>платформы конфигурации<>проекта формы.
Как конфигурации влияют на сборку
При построении решения с помощью команды Сборка>Собрать решение, Visual Studio выполняет сборку только активной конфигурации. Все проекты, указанные в этой конфигурации решения, будут построены, и единственной конфигурацией проекта будет только одна из них, указанная в активной конфигурации решения и активной платформе решения, которая отображается на панели инструментов в Visual Studio. Например, Отладка и x86. Другие определенные конфигурации и платформы не создаются.
Если требуется создать несколько конфигураций и платформ в одном действии, можно использовать параметр Сборка>Пакетная сборка в Visual Studio. Для получения доступа к этой функции, нажмите Ctrl+Q, чтобы открыть поле поиска, и введите Batch build . Пакетная сборка доступна не для всех типов проектов. См . инструкции. Создание нескольких конфигураций одновременно.
См. также
- Пошаговое руководство. Сборка приложения
- Компиляция и сборка
- Проекты и решения
- Образец построения C/C++
- Настройка проектов для целевых платформ
- Конфигурации сборки (Visual Studio для Mac)
Download Visual Studio Code
Free and built on open source. Integrated Git, debugging and extensions.
Windows Windows 10, 11
| User Installer | x64 | Arm64 |
| System Installer | x64 | Arm64 |
| .zip | x64 | Arm64 |
| CLI | x64 | Arm64 |
.deb Debian, Ubuntu .rpm Red Hat, Fedora, SUSE
| .deb | x64 | Arm32 | Arm64 |
| .rpm | x64 | Arm32 | Arm64 |
| .tar.gz | x64 | Arm32 | Arm64 |
| Snap | Snap Store | ||
| CLI | x64 | Arm32 | Arm64 |
Mac macOS 10.15+
| .zip | Intel chip | Apple silicon | Universal |
| CLI | Intel chip | Apple silicon |
By downloading and using Visual Studio Code, you agree to the license terms and privacy statement.
Code editing. Redefined.
By using VS Code, you agree to its license and privacy statement.
VS @code does so many things right. I’m constantly impressed by the UX, and customizing workspace / user preferences is no exception. It just keeps getting better ❤️
VS Code will have deep remote development. You can connect to a container running a different OS and use any VS Code plugins, linting, debugging for that environment.
VS Code is my most used and favorite editor. I love being able to customize the editor — changing the layout, the icons, fonts and color scheme is so easy!
Just as I thought @code couldn’t get better, out comes its Remote Development plugins that let you remote into containers as a dev environment!
I was a vim fan, but then discovered VS Code’s Vim plugin, which lets me add in my vim keybindings. I can maintain my coding style without having to compromise on speed.
I love @code The built-in markdown previewer is awesome and the plugin system allows me to use GitLens, which makes my workflow so much easier.
Введение в проекты и решения
Область применения:
Visual Studio Visual Studio для Mac
Visual Studio Code ![]()
В этой вводной статье мы изучим, что означает создание решения и проекта в Visual Studio. Решение — это контейнер для упорядочения одного проекта или нескольких связанных, например проекта библиотеки классов и соответствующего тестового проекта.
В качестве упражнения мы создадим решение и проект с нуля, чтобы понять концепцию проекта. Обычно для создания новых проектов используются шаблоны проектов Visual Studio. Также мы рассмотрим свойства проекта и некоторые файлы, которые он может содержать, и создадим ссылку из одного проекта на другой.
Для разработки приложений в Visual Studio не требуются решения и проекты. Вы можете просто открыть папку, содержащую код, и начать написание кода, сборку и отладку. Например, клонированный репозиторий GitHub может не содержать проекты и решения Visual Studio. Дополнительные сведения см. в статье Разработка кода в Visual Studio без использования проектов и решений.
Установите Visual Studio 2019 бесплатно со страницы скачиваемых материалов Visual Studio, если еще не сделали этого.
Установите Visual Studio бесплатно со страницы скачиваемых материалов Visual Studio, если еще не сделали этого.
Проекты и решения
В Visual Studio решение не является «ответом». Решения — это просто контейнеры, используемые Visual Studio для упорядочения одного проекта или нескольких связанных. Когда вы открываете решение в среде Visual Studio, все содержащиеся в нем проекты загружаются автоматически.
Создание решения
Обучение мы начнем с создания пустого решения. После того как вы узнаете о Visual Studio, вы, вероятно, не будете часто создавать пустые решения. При создании проекта в среде Visual Studio она автоматически создает решение для размещения проекта, если никакое решение еще не открыто.

- Откройте Visual Studio.
- В окне запуска выберите Создание нового проекта.
- На странице Создание нового проекта введите в поле поиска пустое решение, выберите шаблон Пустое решение и нажмите Далее.
Совет Если на компьютере установлено несколько рабочих нагрузок, шаблон Пустое решение может не отображаться в верхней части списка результатов поиска. Попробуйте прокрутить список результатов до раздела Другие результаты для вашего поискового запроса. Шаблон должен быть в этом разделе.

- Откройте Visual Studio и в начальном окне выберите Создать проект.
- На странице Создание нового проекта введите в поле поиска пустое решение, выберите шаблон Пустое решение и нажмите Далее.
Совет Если на компьютере установлено несколько рабочих нагрузок, шаблон Пустое решение может не отображаться в верхней части списка результатов поиска. Попробуйте прокрутить раздел Другие результаты для вашего поискового запроса, чтобы найти шаблон.
Добавление проекта
А теперь давайте добавим первый проект в это решение. Начните с пустого проекта и добавьте необходимые элементы.
- В контекстном меню, вызываемом щелчком правой кнопкой мыши элемента Решение QuickSolution в Обозревателе решений выберите Добавить>Новый проект. Открывается диалоговое окно с заголовком Добавление проекта.
- Введите текст пустой в поле поиска вверху, а затем выберите C# в разделе Язык.
- Выберите шаблон Пустой проект (.NET Framework) и нажмите Далее.
- Присвойте проекту имя QuickDate и выберите Создать. Проект с именем «QuickDate» появляется под решением в обозревателе решений. Сейчас он содержит один файл с именем App.config.

Примечание. Если вы не видите шаблон Пустой проект (.NET Framework), установите рабочую нагрузку Visual Studio Разработка классических приложений .NET. Visual Studio использует установку на основе рабочей нагрузки, чтобы устанавливать только те компоненты, которые необходимы для этого типа разработки. Простой способ установить новую рабочую нагрузку при создании нового проекта — выбрать ссылку Установка других средств и компонентов под текстом Не нашли то, что иcкали?. После запуска Visual Studio Installer выберите рабочую нагрузку Разработка классических приложений .NET и нажмите кнопу Изменить.
- Щелкните правой кнопкой мыши элемент Решение QuickSolution в Обозревателе решений и выберите Добавить>Новый проект в контекстном меню.
- На странице Добавление нового проекта в поле поиска сверху введите пустой и выберите C# в разделе Все языки.
- Выберите шаблон Пустой проект (.NET Framework) для C# и нажмите Далее.

Примечание. Visual Studio использует установку на основе рабочей нагрузки, чтобы устанавливать только те компоненты, которые необходимы для этого типа разработки. Если вы не видите шаблон Пустой проект (.NET Framework), установите рабочую нагрузку Visual Studio Разработка классических приложений .NET. Простой способ установить новую рабочую нагрузку при создании нового проекта — выбрать ссылку Установка других средств и компонентов под текстом Не нашли то, что иcкали?. В окне Visual Studio Installer выберите рабочую нагрузку Разработка классических приложений .NET и щелкните Изменить.
Добавление элемента в проект
Добавьте файл кода в пустой проект.
- В контекстном меню, вызываемом щелчком правой кнопкой мыши проекта QuickDate в Обозревателе решений, выберите Добавить>Новый элемент. Откроется диалоговое окно Добавление нового элемента .
- Разверните узел Элементы Visual C# и выберите Код. В средней области выберите шаблон элемента Класс. В поле Имя введите Calendar и нажмите кнопку Добавить. Visual Studio добавляет в проект файл Calendar.cs. .cs в конце — это расширение для файлов кода C#. Файл Calendar.cs отображается в визуальной иерархии проекта в Обозревателе решений и открывается в редакторе.
- Замените содержимое файла Calendar.cs приведенным ниже кодом:
using System; namespace QuickDate < internal class Calendar < static void Main(string[] args) < DateTime now = GetCurrentDate(); Console.WriteLine($"Today's date is "); Console.ReadLine(); > internal static DateTime GetCurrentDate() < return DateTime.Now.Date; >> >
Добавление второго проекта
Чаще всего решения содержат несколько проектов, которые ссылаются друг на друга. Некоторые проекты в решении могут быть библиотеками классов, некоторые — исполняемыми приложениями, а другие — проектами модульных тестов или веб-сайтами.
Чтобы добавить проект модульного теста в решение, начните с шаблона проекта, чтобы не добавлять в проект еще один файл кода.
- В контекстном меню, вызываемом щелчком правой кнопкой мыши элемента Решение QuickSolution в Обозревателе решений выберите Добавить>Новый проект.
- В диалоговом окне Добавить новый проект введите текст модульный тест в поле поиска вверху, а затем выберите C# в разделе Язык.
- Выберите шаблон проекта Проект модульного теста для .NET Core и щелкните Далее.
Примечание. Начиная с Visual Studio 2019 версии 16.9, имя шаблона проекта MSTest изменено с Проект модульного теста MSTest (.NET Core) на Проект модульного теста. В этом обновлении изменилось несколько шагов по созданию проекта.


- В контекстном меню, вызываемом щелчком правой кнопкой мыши элемента Решение QuickSolution в Обозревателе решений выберите Добавить>Новый проект.
- В диалоговом окне Добавить новый проект введите текст модульный тест в поле поиска вверху, а затем выберите C# в разделе Все языки.
- Выберите шаблон проекта Проект модульного теста (.NET Framework) для C# и нажмите кнопку Далее.
- На странице Настроить новый проект укажите имя проекта QuickTest и выберите Создать. Visual Studio добавляет проект QuickTest в Обозреватель решений, а файл UnitTest1.cs открывается в редакторе.
Добавление ссылки на проект
Мы будем использовать новый проект модульного теста для тестирования своего метода в проекте QuickDate, поэтому нужно добавить ссылку на QuickDate в проект QuickTest. Эта ссылка создает зависимость сборки между двумя проектами, то есть QuickDate будет собран перед QuickTest при сборке решения.

- Выберите узел Зависимости в проекте QuickTest, а затем в контекстном меню выберите пункт Добавить ссылку на проект. Открывается диалоговое окно Диспетчер ссылок.
- В левой области разверните узел Проекты и выберите Решение. В средней области установите флажок рядом с пунктом QuickDate и нажмите ОК. Добавляется ссылка на проект QuickDate.

- В обозревателе решений щелкните узел Ссылки в проекте QuickTest правой кнопкой мыши и выберите в контекстном меню пункт Добавить ссылку.
- В диалоговом окне «Диспетчер ссылок» выберите «Проекты«. В средней области установите флажок рядом с пунктом QuickDate и нажмите ОК. Ссылка на проект QuickDate отображается в проекте QuickTest в Обозревателе решений.
Добавление кода теста
- Теперь добавим код теста в соответствующий файл кода C#. Замените все содержимое файла UnitTest1.cs приведенным ниже кодом.
using System; using Microsoft.VisualStudio.TestTools.UnitTesting; namespace QuickTest < [TestClass] public class UnitTest1 < [TestMethod] public void TestGetCurrentDate() < Assert.AreEqual(DateTime.Now.Date, QuickDate.Calendar.GetCurrentDate()); >> >
using System.Runtime.CompilerServices; [assembly: InternalsVisibleTo("QuickTest")]
Код Calendar.cs должен выглядеть как на следующем снимке экрана.


выполнить модульный тест.
Чтобы проверить работоспособность модульного теста, выберите Тест>Запустить все тесты в строке меню. Открывается окно Обозреватель тестов, где должно быть указано, что тест TestGetCurrentDate пройден.


Вы также можете открыть тестовый Обозреватель, выбрав Обозреватель тестового>теста в строке меню.
Свойства проекта
Строка в файле Calendar.cs, содержащая атрибут InternalsVisibleToAttribute, ссылается на имя сборки (имя файла) проекта QuickTest. Имя сборки может не всегда совпадать с именем проекта. Чтобы найти имя сборки проекта, откройте свойства проекта. Страницы свойств содержат различные параметры для проекта.
-
В Обозревателе решений щелкните правой кнопкой мыши проект QuickTest и выберите Свойства или выберите проект и нажмите клавиши ALT+ВВОД. Страницы свойств проекта открываются на вкладке Приложение. Имя сборки проекта QuickTest — действительно QuickTest. При необходимости это имя можно изменить здесь. При сборке тестового проекта имя итогового двоичного файла изменится с QuickTest.dll на .dll.


См. также
- Работа с проектами и решениями
- Разработка кода в Visual Studio без использования проектов и решений
- Управление свойствами проектов и решений
- Управление ссылками в проекте
