Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
В этом руководстве описано, как создать решение и проект в Visual Studio. Решение — это контейнер для организации одного или нескольких связанных проектов кода, таких как проект библиотеки классов и соответствующий тестовый проект. Вы создаете ссылку из одного проекта в другое в решении. В этом руководстве также описываются свойства проекта и некоторые файлы, которые он может содержать.
В качестве упражнения, чтобы понять концепцию проекта, вы создадите решение и проект с нуля. Обычно вы используете шаблоны проектов Visual Studio для создания новых проектов.
В этом руководстве вы узнаете, как:
- Добавление элемента в проект
- Добавление второго проекта
- Добавление ссылки на проект
- Добавление тестового кода
- Просмотр свойств проекта
Предпосылки
- Если у вас нет Visual Studio 2019, перейдите к скачиванию Visual Studio , чтобы бесплатно установить его.
- Если у вас нет Visual Studio, перейдите на страницу загрузки Visual Studio, чтобы установить его бесплатно.
Решения и проекты
В Visual Studio решение не является ответом. Решение — это просто контейнер, который Visual Studio использует для организации одного или нескольких связанных проектов. При открытии решения Visual Studio автоматически загружает все проекты, содержащиеся в решении.
Замечание
Для разработки приложений в Visual Studio не требуются решения и проекты. Вы можете просто открыть папку, содержащую код, и начать написание кода, сборку и отладку. Например, клонированного репозитория GitHub может не содержать проекты и решения Visual Studio. Дополнительные сведения см. в статье "Разработка кода в Visual Studio без проектов или решений".
Создание решения
Запустите исследование, создав пустое решение. После того как вы узнаете о Visual Studio, вы, вероятно, не будете часто создавать пустые решения. При создании нового проекта Visual Studio автоматически создает решение для проекта, если решение еще не открыто.
Откройте Visual Studio.
В окне запуска выберите Создание нового проекта.
На странице "Создание проекта " введите пустое решение в поле поиска, выберите шаблон "Пустое решение " и нажмите кнопку "Далее".
Подсказка
Если установлено несколько рабочих нагрузок, шаблон пустого решения может не отображаться в верхней части списка результатов поиска. Попробуйте прокрутить список до раздела Другие результаты по вашему запросу. Он должен появиться там.
Назовите решение QuickSolution и нажмите кнопку "Создать".
Решение отображается в обозревателе решений справа от окна Visual Studio. Вы, вероятно, часто используете обозреватель решений для просмотра содержимого проектов.
Откройте Visual Studio и в окне запуска нажмите кнопку "Создать проект".
На странице "Создание проекта " введите пустое решение в поле поиска, выберите шаблон "Пустое решение " и нажмите кнопку "Далее".
Подсказка
Если у вас установлено несколько нагрузок, шаблон Blank Solution может не отображаться в верхней части списка результатов поиска. Попробуйте прокрутить другие результаты на основе поиска , чтобы найти шаблон.
На странице "Настройка нового проекта" назовите решение QuickSolution и нажмите кнопку "Создать".
Решение QuickSolution отображается в обозревателе решений справа от окна Visual Studio. Обозреватель решений часто используется для просмотра содержимого проектов.
Добавление проекта
Теперь добавьте первый проект в решение. Начните с пустого проекта и добавьте необходимые элементы.
В обозревателе решений щелкните правой кнопкой мыши решение QuickSolution. В контекстном меню выберите "Добавить>новый проект".
Откроется диалоговое окно с надписью "Добавить новый проект".
Введите текст , пустой в поле поиска вверху, а затем выберите C# в разделе "Язык".
Выберите шаблон пустого проекта (.NET Framework) и нажмите кнопку "Далее".
Назовите проект QuickDate, а затем нажмите кнопку "Создать".
Проект с именем QuickDate отображается под решением в обозревателе решений. В настоящее время он содержит один файл с именем App.config.
Замечание
Если шаблон пустого проекта (.NET Framework) не отображается, необходимо установить рабочую область Visual Studio для разработки классических .NET приложений. Visual Studio использует установку на основе рабочей нагрузки для установки только компонентов, необходимых для типа разработки.
Простой способ установить новый рабочий набор при создании нового проекта — выбрать ссылку "Установить дополнительные средства и функции" в разделе «Не можете найти то, что ищете?». После запуска установщика Visual Studio выберите рабочую нагрузку .NET для разработки настольных приложений и нажмите кнопку Изменить.
В обозревателе решений щелкните правой кнопкой мыши решение QuickSolution. В контекстном меню выберите "Добавить>новый проект".
На странице "Добавление нового проекта " введите пустое поле поиска в верхней части и выберите C# в разделе "Все языки".
Выберите шаблон пустого проекта C# (.NET Framework) и нажмите кнопку "Далее".
Замечание
Visual Studio использует установку на основе рабочей нагрузки для установки только компонентов, необходимых для типа разработки. Если шаблон Empty Project (.NET Framework) не отображается, установите рабочую нагрузку .NET desktop development в Visual Studio.
Простой способ установить новую рабочую нагрузку при создании нового проекта — выбрать ссылку "Установить дополнительные средства и компоненты" в тексте с надписью "Не можете найти то, что ищете?". В установщике Visual Studio выберите рабочую среду .NET для разработки настольных приложений, затем выберите Изменить.
На странице "Настройка нового проекта " назовите проект QuickDate и нажмите кнопку "Создать".
Проект QuickDate отображается в обозревателе решений. Проект содержит узел "Ссылки" и один файл с именем App.config.
Добавление элемента в проект
Добавьте файл кода в пустой проект.
В обозревателе решений щелкните правой кнопкой мыши проект QuickDate . В контекстном меню выберите "Добавить>новый элемент".
Откроется диалоговое окно "Добавить новый элемент ". Выберите "Показать все шаблоны ", если откроется диалоговое окно в компактном представлении.
Разверните элементы Visual C# и выберите "Код". В средней области выберите шаблон элемента класса . В разделе "Имя" введите "Календарь" и нажмите кнопку "Добавить".
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 {now}"); Console.ReadLine(); } internal static DateTime GetCurrentDate() { return DateTime.Now.Date; } } }Вам еще не нужно понимать все, что делает код. Запустите приложение, нажав клавиши CTRL+F5. Приложение выводит текущую дату на консоль или в окно стандартного вывода. Затем закройте окно консоли.
Добавление второго проекта
Решения обычно содержат несколько проектов, и эти проекты часто ссылаются друг на друга. Некоторые проекты в решении могут быть библиотеками классов, некоторые могут быть исполняемыми приложениями, а некоторые могут быть проектами модульных тестов или веб-сайтами.
Чтобы добавить проект модульного теста в решение, начните с шаблона проекта, чтобы вам не нужно добавлять в проект другой файл кода.
В обозревателе решений щелкните правой кнопкой мыши решение QuickSolution. В контекстном меню выберите "Добавить>новый проект".
В диалоговом окне "Добавление нового проекта " введите текстовый модульный тест в поле поиска вверху и выберите C# в разделе "Язык".
Выберите шаблон проекта модульного теста для .NET Core и нажмите кнопку "Далее".
Замечание
Начиная с Visual Studio 2019 версии 16.9 имя шаблона проекта MSTest изменилось с msTest Unit Test Project (.NET Core) на проект модульного теста. В этом обновлении было изменено несколько шагов при создании проекта.
Назовите проект QuickTest и нажмите кнопку "Далее".
Выберите рекомендуемую целевую платформу (.NET Core 3.1) или .NET 5 и нажмите кнопку "Создать".
Второй проект добавляется в обозреватель решений, а файл с именем UnitTest1.cs открывается в редакторе.
В обозревателе решений щелкните правой кнопкой мыши решение QuickSolution. В контекстном меню выберите "Добавить>новый проект".
В диалоговом окне "Добавление нового проекта " введите модульное тестирование в поле поиска вверху и выберите C# в разделе "Все языки".
Выберите шаблон проекта модульного теста C# (.NET Framework), а затем нажмите кнопку "Далее".
На странице "Настройка нового проекта " назовите проект 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()); } } }Под некоторыми участками кода появляется красная волнистая линия. Эту ошибку можно устранить, сделав тестовую сборку дружественной сборкой для проекта QuickDate.
В файле Calendar.cs добавьте следующую инструкцию using и InternalsVisibleToAttribute атрибут в начало файла, чтобы устранить ошибку в тестовом проекте.
using System.Runtime.CompilerServices; [assembly: InternalsVisibleTo("QuickTest")]Код Calendar.cs должен выглядеть следующим образом:
выполнить модульный тест.
Чтобы убедиться, что модульный тест работает, в строке меню выберите "Тестировать>все тесты". Откроется окно обозревателя тестов , и вы увидите, что тест TestGetCurrentDate проходит.
Подсказка
Вы также можете открыть обозреватель тестов, выбрав> в строке менюобозреватель тестов.
Свойства проекта
Строка в файле Calendar.cs , который содержит InternalsVisibleToAttribute атрибут, ссылается на имя сборки или имя файла проекта QuickTest . Имя сборки может не всегда совпадать с именем проекта. Чтобы найти имя сборки проекта, используйте свойства проекта. Страницы свойств содержат различные параметры проекта.
В обозревателе решений щелкните правой кнопкой мыши проект QuickTest и выберите "Свойства" или выберите проект и нажмите клавиши ALT+ВВОД.
Страницы свойств для проекта открываются на вкладке "Приложение". Имя сборки проекта QuickTest действительно называется QuickTest.
Если вы хотите, вы можете изменить имя здесь. При сборке тестового проекта имя полученного двоичного файла изменяется с QuickTest.dll на <NewName>.dll.
Изучите некоторые другие вкладки страниц свойств проекта, такие как сборка и отладка. Эти вкладки отличаются для различных типов проектов.