Поделиться через


Руководство. Начало работы с C# и ASP.NET Core в Visual Studio

В этом руководстве по разработке C# с помощью ASP.NET Core вы создадите веб-приложение C# ASP.NET Core в Visual Studio.

В этом руководстве показано, как:

  • Создание проекта Visual Studio
  • Создание веб-приложения C# ASP.NET Core
  • Внесение изменений в веб-приложение
  • Изучение функций интегрированной среды разработки
  • Запуск веб-приложения

Необходимые условия

Чтобы завершить работу с этим руководством, вам потребуется:

  • Установлен Visual Studio. Перейдите на страницу скачивания Visual Studio, чтобы получить бесплатную версию. Для получения дополнительной информации об обновлении до последней версии Visual Studio, см. обновления Visual Studio.
  • Установлена рабочая нагрузка ASP.NET и веб-разработки. Чтобы проверить или установить эту рабочую нагрузку в Visual Studio, выберите Инструменты>Получить средства и возможности. Дополнительные сведения см. в разделе Изменение рабочих нагрузок или отдельных компонентов.

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

Сначала вы создадите проект ASP.NET Core. Тип проекта поставляется со всеми файлами шаблонов, которые нужны, чтобы создать полнофункциональный веб-сайт.

  1. В окне запуска выберите Создать проект.

    На снимке экрана показано начальное окно Visual Studio. Выделен параметр создания нового проекта.

  2. В окне Создание проекта выберите C# из списка языков. Затем выберите Windows из списка платформ и Web из списка типов проектов.

    После применения фильтров языков, платформы и типов проекта выберите шаблон ASP.NET Core Web App, а затем нажмите кнопку Далее.

    снимок экрана, на котором показан шаблон проекта ASP.NET Core Web App, выделенный в диалоговом окне

  3. В окне Настройка нового проекта введите MyCoreApp в поле имени проекта . Затем нажмите кнопку Далее.

    снимок экрана, показывающий окно

  4. В окне Дополнительные сведения убедитесь, что .NET Core 3.1 находится в поле целевой платформы.

    В этом окне можно включить поддержку Docker и добавить поддержку проверки подлинности. Раскрывающееся меню для типа проверки подлинности имеет следующие четыре варианта:

    • Нет: нет проверки подлинности.
    • отдельные учетные записи. Эти аутентификации хранятся в локальной базе данных или базе данных Azure.
    • платформа идентификации Microsoft: этот параметр использует Microsoft Entra ID или Microsoft 365 для проверки подлинности.
    • Windows: подходит для приложений интрасети.

    Оставьте поле Включить Docker пустым и выберите Отсутствует для типа аутентификации.

    снимок экрана, показывающий параметры по умолчанию в окне дополнительных сведений, в котором целевая платформа имеет значение .NET Core 3.1.

  5. Выберите Создать.

Visual Studio открывает новый проект.

  1. В окне запуска выберите Создать проект.

    Снимок экрана показывает стартовое окно для Visual Studio. Выделена опция создания нового проекта.

  2. В окне Создание проекта выберите C# из списка языков. Затем выберите Windows из списка всех платформ и Веб из списка всех типов проектов.

    После применения фильтров языков, платформы и типов проекта выберите шаблон ASP.NET Core Web App (Razor Pages), а затем выберите Далее.

    снимок экрана, на котором показан выбранный шаблон проекта ASP.NET Core Web App и выделенный на странице

  3. В окне Настройка нового проекта введите MyCoreApp в поле Имя проекта. Затем нажмите кнопку Далее.

    снимок экрана, который показывает окно

  4. В окне Дополнительные сведения убедитесь, что в поле Target Framework указано .NET 8.0.

    В этом окне можно включить поддержку контейнеров и добавить поддержку проверки подлинности. Раскрывающееся меню для типа проверки подлинности имеет следующие четыре варианта:

    • Нет: нет проверки подлинности.
    • Персональные учетные записи: Эти аутентификации хранятся в локальной базе данных или в базе данных Azure.
    • платформа удостоверений Microsoft: этот параметр использует идентификатор Entra ID или Microsoft 365 для проверки подлинности.
    • Windows: подходит для приложений интрасети.

    Оставьте флажок Включить поддержку контейнеров снятым и выберите Нет для типа проверки подлинности.

    снимок экрана, показывающий параметры по умолчанию в окне дополнительных сведений, в котором целевая платформа имеет значение .NET 8.0.

  5. Выберите Создать.

Visual Studio открывает новый проект.

Информация о вашем решении

Это решение следует шаблону проектирования Razor Page. Он отличается от шаблона проектированияView-Controller модели (MVC), что упрощает включение кода модели и контроллера в саму страницу Razor.

Обзор решения

  1. Шаблон проекта создает решение с одним проектом ASP.NET Core с именем MyCoreApp. Выберите вкладку обозревателя решений , чтобы просмотреть его содержимое.

    снимок экрана: проект MyCoreApp, выбранный в обозревателе решений в Visual Studio.

  2. Разверните папку Pages.

    снимок экрана: содержимое папки Pages в обозревателе решений в Visual Studio..

  3. Выберите файл Index.cshtml и просмотрите файл в редакторе кода.

    Снимок экрана показывает файл Index dot c s h t m l, открытый в редакторе кода Visual Studio.

  4. Каждый CSHTML-файл имеет связанный файл кода. Чтобы открыть файл кода в редакторе, разверните узел Index.cshtml в обозревателе решений и выберите файл Index.cshtml.cs.

    Снимок экрана показывает файл Index.cshtml, выбранный в обозревателе решений Visual Studio.

  5. Просмотрите файл Index.cshtml.cs в редакторе кода.

    скриншот показывает файл Index.cshtml.cs, открытый в редакторе кода Visual Studio.

  6. Проект содержит папку wwwroot, которая является корнем для веб-сайта. Разверните папку, чтобы просмотреть его содержимое.

    Скриншот показывает, что корневая папка w w w выбрана в обозревателе решений в Visual Studio.

    Вы можете поместить статический контент сайта, например CSS, изображения и библиотеки JavaScript, непосредственно по требуемым путям.

    Проект также содержит файлы конфигурации, управляющие веб-приложением во время выполнения. Конфигурация приложения по умолчанию хранится в appsettings.json. Однако эти параметры можно переопределить с помощью appsettings.Development.json.

  7. Разверните файл appsettings.json, чтобы просмотреть файл appsettings.Development.json.

    Снимок экрана показывает, что в обозревателе решений в Visual Studio выбран и развернут файл appsettings.json.

Выполнение, отладка и внесение изменений

  1. На панели инструментов нажмите кнопку IIS Express, чтобы создать и запустить приложение в режиме отладки. Кроме того, нажмите F5или перейдите к Отладка>Запуск отладки в строке меню.

    снимок экрана: кнопка I S Express, выделенная на панели инструментов в Visual Studio.

    Заметка

    Если появится сообщение об ошибке, которое говорит, что не удается подключиться к веб-серверу IIS Express, закройте Visual Studio и снова запустите программу в качестве администратора. Эту задачу можно выполнить, щелкнув правой кнопкой мыши значок Visual Studio в меню "Пуск" и выбрав параметр Запустить от имени администратора в контекстном меню.

    Вы также можете получить сообщение, которое запрашивает, нужно ли принять SSL-сертификат IIS SSL Express. Чтобы просмотреть код в веб-браузере, выберите Да, а затем выберите Да, если появится предупреждение системы безопасности.

  2. Visual Studio запускает окно браузера. Затем в строке меню должны отображаться страницы Главная и Конфиденциальность.

  3. Выберите Конфиденциальность в строке меню. Страница конфиденциальности в браузере отображает текст, заданный в файле Privacy.cshtml.

    снимок экрана: страница

  4. Вернитесь в Visual Studio и нажмите клавишу SHIFT+F5, чтобы остановить отладку. Это действие закрывает проект в окне браузера.

  5. В Visual Studio откройте Privacy.cshtml для редактирования. Затем удалите предложение, Эту страницу можно использовать для подробной информации о политике конфиденциальности сайта и замените его на Эта страница находится в стадии создания с @ViewData["TimeStamp"].

    Скриншот показывает файл Privacy.html, открытый в редакторе кода Visual Studio с обновлённым текстом.

  6. Теперь давайте изменим код. Выберите Privacy.cshtml.cs. Затем очистите директивы using в верхней части файла с помощью следующего ярлыка:

    Наведите указатель мыши или выберите неактивную директиву using. быстрые действия лампочки отображаются под курсором или в левом поле. Выберите лампочку, а затем выберите Удалить ненужные.

    ru-RU: Скриншот показывает файл Privacy.chtml в редакторе кода Visual Studio с подсказкой

    Теперь выберите Просмотреть изменения, чтобы увидеть, какие изменения.

    снимок экрана: диалоговое окно

    Выберите Применить. Visual Studio удаляет ненужные директивы using из файла.

  7. Затем в методе OnGet() измените текст на следующий код:

    public void OnGet()
    {
       string dateTime = DateTime.Now.ToShortDateString();
       ViewData["TimeStamp"] = dateTime;
    }
    
  8. Обратите внимание, что в DateTimeпоявляется волнистое подчеркивание. Волнистое подчеркивание появляется, так как этот тип не входит в область видимости.

    на снимке экрана показана метка ошибки в виде волнистого подчеркивания для DateTime в редакторе кода Visual Studio.

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

    Снимок экрана показывает панель инструментов списка ошибок в Visual Studio, где указан DateTime.

  9. Давайте исправим эту ошибку. В редакторе кода поместите курсор на строку, содержащую ошибку, и выберите лампочку быстрых действий в левом поле. Затем в раскрывающемся меню выберите , используя System;, чтобы добавить эту директиву в начало файла и устранить ошибки.

    Снимок экрана показывает параметры быстрых действий из раскрывающегося меню с наведением указателя на пункт 'System'.

  10. Нажмите F5, чтобы открыть проект в веб-браузере.

  11. В верхней части веб-сайта выберите Конфиденциальность, чтобы просмотреть ваши изменения.

    снимок экрана, на котором показана обновленная страница конфиденциальности, содержащая внесенные изменения.

  12. Закройте веб-браузер , нажмите клавиши SHIFT+F5, чтобы остановить отладку.

Изменение домашней страницы

  1. В обозревателе решенийразверните папку Pages и выберите Index.cshtml.

    Снимок экрана показывает файл Index.cshmtl, выбранный под узлом Pages в Обозревателе решений.

    Файл Index.cshtml соответствует странице домашней в веб-приложении, который выполняется в веб-браузере.

     снимок экрана: домашняя страница веб-приложения в окне браузера.

    В редакторе кода вы видите HTML-код текста, который показан на странице Главная.

    Снимок экрана показывает файл index.cshhtml для главной страницы в кодовом редакторе Visual Studio.

  2. Замените текст приветствие на Hello World!

    снимок экрана: файл index dot c h m l в редакторе кода Visual Studio с текстом приветствия, измененным на Hello World!.

  3. Выберите IIS Express или нажмите клавиши CTRL +F5, чтобы запустить приложение и открыть его в веб-браузере.

    снимок экрана: кнопка IIS Express, выделенная на панели инструментов для Visual Studio.

  4. В веб-браузере вы увидите новые изменения на странице home.

    снимок экрана: домашняя страница веб-приложения в окне браузера. Обновленный текст говорит Hello World!

  5. Закройте веб-браузер, нажмите клавиши SHIFT +F5, чтобы остановить отладку и сохранить проект. Теперь вы можете закрыть Visual Studio.

Обзор решения

  1. Шаблон проекта создает решение с одним проектом ASP.NET Core с именем MyCoreApp. Выберите вкладку обозревателя решений , чтобы просмотреть его содержимое.

    снимок экрана: выбранный проект MyCoreApp и его содержимое в обозревателе решений в Visual Studio.

  2. Разверните папку Pages.

    снимок экрана: содержимое папки Pages в обозревателе решений.

  3. Выберите файл Index.cshtml и просмотрите его в редакторе кода.

    снимок экрана: файл Index.cshtml открыт в редакторе Visual Studio Code.

  4. Каждый CSHTML-файл имеет связанный файл кода. Чтобы открыть файл кода в редакторе, разверните узел Index.cshtml в обозревателе решений и выберите файл Index.cshtml.cs.

    снимок экрана: файл Index.cshtml, выбранный в обозревателе решений в Visual Studio.

  5. Просмотрите файл Index.cshtml.cs в редакторе кода.

    снимок экрана: файл Index.cshtml.cs открыт в редакторе Visual Studio Code.

  6. Проект содержит папку wwwroot, которая является корнем для веб-сайта. Разверните папку, чтобы просмотреть его содержимое.

    снимок экрана показывает корневую папку w w w, выбранную в обозревателе решения в Visual Studio.

    Вы можете поместить статический контент сайта, такой как CSS, изображения и библиотеки JavaScript, непосредственно в нужные директории, где вы хотите.

  7. Проект также содержит файлы конфигурации, управляющие веб-приложением во время выполнения. Конфигурация приложения по умолчанию хранится в appsettings.json. Однако эти параметры можно переопределить с помощью appsettings.Development.json. Разверните файл appsettings.json, чтобы просмотреть файл appsettings.Development.json.

    скриншот показывает appsettings.json, выбранный и развернутый, что показывает appsettings.Development.jsonв обозревателе решений в Visual Studio.

Выполнение, отладка и внесение изменений

  1. На панели инструментов нажмите кнопку https, чтобы создать и запустить приложение в режиме отладки. Кроме того, нажмите F5или перейдите к Отладка>Начать отладку на панели меню.

    снимок экрана: кнопка https, выделенная на панели инструментов в Visual Studio.

    Заметка

    Вы также можете получить сообщение, которое спрашивает, хотите ли вы принять ssl-сертификат ASP.NET Core. Чтобы просмотреть код в веб-браузере, выберите Да, а затем выберите Да, если появится предупреждение системы безопасности. Дополнительные сведения о применении SSL см. в ASP.NET Core.

  2. Visual Studio запускает окно браузера. Затем в строке меню должны отображаться домашняя страница и страница конфиденциальности.

  3. Выберите Конфиденциальность в строке меню. Страница конфиденциальности в браузере отображает текст, который установлен в файле Privacy.cshtml.

    снимок экрана: страница

  4. Вернитесь в Visual Studio и нажмите клавишу SHIFT+F5, чтобы остановить отладку. Это действие закрывает проект в окне браузера.

  5. В Visual Studio откройте Privacy.cshtml для редактирования. Затем удалите предложение, которое гласит: "Эту страницу можно использовать для подробной информации о политике конфиденциальности сайта" и замените его на "Эта страница находится в разработке с @ViewData["TimeStamp"]".

    снимок экрана: файл Privacy.cshtml открыт в редакторе Visual Studio Code с обновленным текстом.

  6. Теперь давайте изменим код. Выберите Privacy.cshtml.cs. Затем очистите директивы using в верхней части файла, выбрав следующее сочетание клавиш:

    Наведите указатель мыши или выберите серую директиву using. Индикатор быстрых действий в виде лампочки отображается под курсором или в левом поле. Выберите лампочку, а затем щелкните стрелку развертывания рядом с Удалить ненужные.

    Снимок экрана показывает файл Privacy.cshtml в редакторе Visual Studio Code с открытой подсказкой

    Теперь выберите Предварительный просмотр изменений, чтобы увидеть изменения.

    снимок экрана: диалоговое окно

    Выберите Применить. Visual Studio удаляет ненужные директивы using из файла.

  7. Далее создайте строку для текущей даты, отформатированную в соответствии с вашими региональными параметрами, воспользовавшись методом DateTime.ToString.

    • Первый аргумент метода указывает, как должна отображаться дата. В этом примере используется описатель формата (d), указывающий короткий формат даты.
    • Второй аргумент — это объект CultureInfo, указывающий культуру или регион для даты. Второй аргумент определяет, помимо прочего, язык любых слов в дате и тип используемых разделителей.

    Измените текст метода OnGet() в Privacy.cshtml.cs на следующий код:

    public void OnGet()
    {
       string dateTime = DateTime.Now.ToString("d", new CultureInfo("en-US"));
       ViewData["TimeStamp"] = dateTime;
    }
    
  8. Обратите внимание, что следующая директива using автоматически добавляется в начало файла:

    using System.Globalization;
    

    System.Globalization содержит класс CultureInfo.

  9. Нажмите F5, чтобы открыть проект в веб-браузере.

  10. В верхней части веб-сайта выберите Конфиденциальность для просмотра ваших изменений.

    снимок экрана со страницей конфиденциальности MyCoreApp, включающей изменения, внесенные для добавления даты.

  11. Закройте веб-браузер , нажмите клавиши SHIFT+F5, чтобы остановить отладку.

Изменение домашней страницы

  1. В обозревателе решенийразверните папку Pages и выберите Index.cshtml.

    Снимок экрана показывает, что Index.cshtml выбрана под узлом Pages в обозревателе решений.

    Файл Index.cshtml соответствует вашей домашней странице в веб-приложении, которое выполняется в веб-браузере.

    снимок экрана: домашняя страница веб-приложения в окне браузера.

    В редакторе кода вы видите HTML-код текста, который отображается на странице главная.

    снимок экрана: файл Index.cshtml для домашней страницы в редакторе Visual Studio Code.

  2. Замените текст Welcome на Hello World!

    снимок экрана: файл Index.cshtml в редакторе Visual Studio Code с текстом приветствия изменен на Hello World!.

  3. Выберите https или нажмите клавиши CTRL +F5, чтобы запустить приложение и открыть его в веб-браузере.

    снимок экрана: кнопка https, выделенная на панели инструментов для Visual Studio.

  4. В веб-браузере вы увидите новые изменения на странице home.

    снимок экрана: домашняя страница веб-приложения в окне браузера. Обновленный текст говорит

  5. Закройте веб-браузер, нажмите клавиши SHIFT +F5, чтобы остановить отладку и сохранить проект. Теперь вы можете закрыть Visual Studio.

Дальнейшие действия

Поздравляем с завершением работы с этим руководством! Мы надеемся, что вы получили удовольствие от изучения C#, ASP.NET Core и интегрированной среды разработки Visual Studio. Дополнительные сведения о создании веб-приложения или веб-сайта с помощью C# и ASP.NET см. в следующем руководстве:

Кроме того, узнайте, как контейнеризировать веб-приложение с помощью Docker:

Инструменты контейнеров в Visual Studio