net core с чего начать
Введение в ASP.NET Core
ASP.NET Core является кроссплатформенной, высокопроизводительной средой с открытым исходным кодом для создания современных облачных приложений, подключенных к Интернету. ASP.NET Core позволяет выполнять следующие задачи:
Преимущества, обеспечиваемые ASP.NET Core
Миллионы разработчиков использовали и продолжают использовать ASP.NET 4.x для создания веб-приложений. ASP.NET Core — это модификация ASP.NET 4.x с архитектурными изменениями, формирующими более рациональную и более модульную платформу.
ASP.NET Core предоставляет следующие преимущества:
Создание веб-API и пользовательского веб-интерфейса с помощью ASP.NET Core MVC
ASP.NET Core MVC предоставляет функции, которые позволяют создавать веб-интерфейсы API и веб-приложения.
Клиентская разработка
ASP.NET Core легко интегрируется с распространенными клиентскими платформами и библиотеками, в том числе Blazor, Angular, React и Bootstrap. Подробнее см. Введение в ASP.NET Core Blazor и связанные материалы о разработке на стороне клиента.
Целевые версии платформы ASP.NET Core
Рекомендуемая схема обучения
Для знакомства с разработкой приложений ASP.NET Core рекомендуется изучить следующую последовательность учебников.
Пройдите учебник по тому типу приложения, которое вы собираетесь разрабатывать или обслуживать.
Тип приложения | Сценарий | Учебник |
---|---|---|
Веб-приложение | Разработка нового веб-интерфейса на стороне сервера | Начало работы с Razor Pages |
Веб-приложение | Обслуживание приложения MVC | Начало работы с MVC |
Веб-приложение | Разработка веб-интерфейса на стороне клиента | Начало работы с Blazor |
Веб-интерфейс API | Службы HTTP RESTFUL | Создание веб-API† |
Приложение удаленного вызова процедур | Разработка в соответствии с парадигмой «Сначала контракт» с использованием Protocol Buffers | Начало работы со службой gRPC |
Приложение режима реального времени | Двунаправленный обмен данными между сервером и подключенными к нему клиентами | Начало работы с SignalR |
Пройдите учебник, посвященный основам доступа к данным.
Сценарий | Учебник |
---|---|
Разработка нового приложения | Razor Pages с Entity Framework Core |
Обслуживание приложения MVC | MVC с Entity Framework Core |
Ознакомьтесь с обзором основ ASP.NET Core, относящихся ко всем типам приложений.
Просмотрите содержание, чтобы найти другие интересующие вас темы.
†Доступен интерактивный учебник по веб-API. Локальная установка средств разработки не требуется. Код выполняется в Azure Cloud Shell в браузере, а для тестирования используется curl.
Справочное руководство по миграции приложений ASP.NET 4.x на ASP.NET Core см. в статье Миграция с ASP.NET на ASP.NET Core.
ASP.NET Core является кроссплатформенной, высокопроизводительной средой с открытым исходным кодом для создания современных облачных приложений, подключенных к Интернету. ASP.NET Core позволяет выполнять следующие задачи:
Преимущества, обеспечиваемые ASP.NET Core
Миллионы разработчиков использовали и продолжают использовать ASP.NET 4.x для создания веб-приложений. ASP.NET Core — это модификация ASP.NET 4.x с архитектурными изменениями, формирующими более рациональную и более модульную платформу.
ASP.NET Core предоставляет следующие преимущества:
Создание веб-API и пользовательского веб-интерфейса с помощью ASP.NET Core MVC
ASP.NET Core MVC предоставляет функции, которые позволяют создавать веб-интерфейсы API и веб-приложения.
Клиентская разработка
ASP.NET Core легко интегрируется с распространенными клиентскими платформами и библиотеками, в том числе Blazor, Angular, React и Bootstrap. Подробнее см. Введение в ASP.NET Core Blazor и связанные материалы о разработке на стороне клиента.
Рекомендуемая схема обучения
Для знакомства с разработкой приложений ASP.NET Core рекомендуется изучить следующую последовательность учебников и статей.
Пройдите учебник по тому типу приложения, которое вы собираетесь разрабатывать или обслуживать.
Тип приложения | Сценарий | Учебник |
---|---|---|
Веб-приложение | Разработка нового приложения | Начало работы с Razor Pages |
Веб-приложение | Обслуживание приложения MVC | Начало работы с MVC |
Веб-интерфейс API | Создание веб-API† | |
Приложение режима реального времени | Начало работы с SignalR |
Пройдите учебник, посвященный основам доступа к данным.
Сценарий | Учебник |
---|---|
Разработка нового приложения | Razor Pages с Entity Framework Core |
Обслуживание приложения MVC | MVC с Entity Framework Core |
Ознакомьтесь с обзором основ ASP.NET Core, относящихся ко всем типам приложений.
Просмотрите содержание, чтобы найти другие интересующие вас темы.
† Доступен новый учебник по веб-API с прохождением в браузере, не требующий установки локальной интегрированной среды разработки. Код выполняется в Azure Cloud Shell, а для тестирования используется curl.
Справочное руководство по миграции приложений ASP.NET на ASP.NET Core см. в статье Миграция с ASP.NET на ASP.NET Core.
Загрузка примера
Многие статьи и учебники содержат ссылки на примеры кода.
Директивы препроцессора в примере кода
Например, в следующем списке символов #define видно, что доступно четыре сценария (один сценарий на символ). В текущем примере конфигурации запускается сценарий TemplateCode :
Дополнительные сведения об использовании директив препроцессора C# для выборочной компиляции фрагментов кода см. в разделах #define (Справочник по C#) и #if (Справочник по C#).
Регионы в примере кода
Некоторые примеры приложений содержат фрагменты кода внутри директив C# #region и #endregion. Система сборки документации вставляет эти регионы в обработанные разделы документации.
Названия регионов обычно содержат слово «фрагмент». В следующем примере показан регион с именем snippet_WebHostDefaults :
На предыдущий фрагмент кода C# указывает ссылка в следующей строке в файле Markdown раздела:
Вы можете спокойно проигнорировать или удалить директивы #region и #endregion вокруг кода. Не изменяйте код внутри этих директив, если планируете запустить примеры сценариев, описанные в разделе. Вы можете изменить код, экспериментируя с другими сценариями.
Критические изменения и советы по безопасности
Критические изменения и рекомендации по безопасности отображаются в репозитории объявлений. Объявления можно ограничить определенной версией, выбрав фильтр меток.
Дальнейшие действия
Дополнительные сведения см. в следующих ресурсах:
Учебник. Начало работы с C# и ASP.NET Core в Visual Studio
В этом руководстве по разработке на языке C# с помощью ASP.NET Core в Visual Studio вы создадите веб-приложение ASP.NET Core на C#, внесете в него изменения, изучите некоторые возможности интегрированной среды разработки, после чего запустите приложение.
Предварительные требования
Установка Visual Studio
Установите Visual Studio бесплатно со страницы скачиваемых материалов Visual Studio, если еще не сделали этого.
Установите Visual Studio бесплатно со страницы скачиваемых материалов Visual Studio, если еще не сделали этого.
Обновите Visual Studio: если вы уже установили Visual Studio, убедитесь, что используется самый последний выпуск среды. Дополнительные сведения об обновлении установки см. на странице Обновление до последнего выпуска Visual Studio.
Выберите тему (необязательно): в этом учебнике содержатся снимки экрана, в которых используется темная тема. Вы можете персонализировать страницу интегрированной среды разработки и редактора Visual Studio, чтобы узнать, как это сделать.
Создание проекта
Сначала создадим проект ASP.NET Core. Проект этого типа содержит все файлы шаблонов, необходимые для полнофункционального веб-сайта, что избавляет вас от лишней работы.
Откройте Visual Studio 2017.
В верхней строке меню последовательно выберите Файл > Создать > Проект.
Добавление рабочей нагрузки (необязательно)
Если шаблон проекта Веб-приложение ASP.NET Core отсутствует, его можно получить, добавив рабочую нагрузку ASP.NET и разработка веб-приложений. Добавить ее можно одним из двух способов в зависимости от того, какие обновления Visual Studio 2017 установлены на вашем компьютере.
Вариант 1: использование диалогового окна «Новый проект»
Выберите ссылку Открыть Visual Studio Installer в левой области диалогового окна Новый проект. (В зависимости от параметров отображения может потребоваться выполнить прокрутку.)
Запускается Visual Studio Installer. Выберите рабочую нагрузку ASP.NET и разработка веб-приложений, а затем щелкните Изменить.
(Возможно, перед тем как продолжить установку рабочей нагрузки, придется закрыть Visual Studio.)
Вариант 2: использование меню «Сервис»
Закройте диалоговое окно Создать проект. Затем в верхней строке меню выберите Сервис > Получить средства и компоненты.
Запускается Visual Studio Installer. Выберите рабочую нагрузку ASP.NET и разработка веб-приложений, а затем щелкните Изменить.
(Возможно, перед тем как продолжить установку рабочей нагрузки, придется закрыть Visual Studio.)
Добавление шаблона проекта
В диалоговом окне Создать веб-приложение ASP.NET Core выберите шаблон проекта Веб-приложение.
Убедитесь, что в верхнем раскрывающемся меню отображается ASP.NET Core 2.1. Затем нажмите ОК.
Если в верхнем раскрывающемся меню не отображается ASP.NET Core 2.1, убедитесь, что используется самый последний выпуск Visual Studio. Дополнительные сведения об обновлении установки см. на странице Обновление до последнего выпуска Visual Studio.
На начальном экране выберите Создать проект.
В окне Создание проекта выберите C# в списке языков. Затем выберите Windows в списке платформ и Веб-сайт в списке типов проектов.
Применив фильтры по языку, платформе и типу проекта, выберите шаблон Веб-приложение ASP.NET Core и щелкните Далее.
Если шаблон Консольное приложение отсутствует, его можно установить в окне Создание проекта. В сообщении Не нашли то, что искали? выберите ссылку Установка других средств и компонентов.
После этого в Visual Studio Installer выберите рабочую нагрузку ASP.NET и разработка веб-приложений.
Затем нажмите кнопку Изменить в Visual Studio Installer. Сохраните результаты работы, когда появится такой запрос. Выберите Продолжить, чтобы установить рабочую нагрузку. После этого вернитесь к шагу 2 в процедуре Создание проекта.
В поле Имя проекта окна Настроить новый проект введите MyCoreApp. Нажмите кнопку Далее.
В окне Дополнительные сведения убедитесь, что в раскрывающемся меню вверху указано .NET Core 3.1. Обратите внимание, что вы можете включить поддержку Docker, установив флажок. Также вы можете включить поддержку проверки подлинности, нажав кнопку «Изменить способ проверки подлинности». Здесь доступны следующие варианты.
Не устанавливайте флажок Включить Docker и установите флажок Нет в разделе «Тип проверки подлинности». Затем выберите Создать.
В Visual Studio откроется новый проект.
На начальном экране выберите Создать проект.
В окне Создание проекта выберите C# в списке языков. Затем выберите Windows в списке платформ и Веб-сайт в списке типов проектов.
Применив фильтры по языку, платформе и типу проекта, выберите шаблон Веб-приложение ASP.NET Core и щелкните Далее.
Если шаблон Консольное приложение отсутствует, его можно установить в окне Создание проекта. В сообщении Не нашли то, что искали? выберите ссылку Установка других средств и компонентов.
После этого в Visual Studio Installer выберите рабочую нагрузку ASP.NET и разработка веб-приложений.
Затем нажмите кнопку Изменить в Visual Studio Installer. Сохраните результаты работы, когда появится такой запрос. Выберите Продолжить, чтобы установить рабочую нагрузку. После этого вернитесь к шагу 2 в процедуре Создание проекта.
В поле Имя проекта окна Настроить новый проект введите MyCoreApp. Нажмите кнопку Далее.
В окне Дополнительные сведения убедитесь, что в поле Платформа отображается значение .NET 6.0. В этом окне вы можете включить поддержку Docker, установив флажок. Также можно добавить поддержку проверки подлинности, выбрав значение из раскрывающегося списка Тип проверки подлинности. Здесь доступны следующие варианты.
Не устанавливайте флажок Включить Docker и установите флажок Нет в разделе «Тип проверки подлинности». Затем выберите Создать.
В Visual Studio откроется новый проект.
Сведения о решении
Это решение основано на конструктивном шаблоне Страница Razor. Он отличается от конструктивного шаблона Model-View-Controller (MVC) тем, что содержит код модели и управляющий код в самой странице Razor.
Обзор решения
С помощью шаблона проекта создается решение с одним проектом ASP.NET Core, который имеет имя MyCoreApp. Перейдите на вкладку Обозреватель решений, чтобы просмотреть его содержимое.
Разверните папку Pages и узел About.cshtml.
Просмотрите файл About.cshtml в редакторе кода.
Выберите файл About.cshtml.cs.
Просмотрите файл About.cshtml.cs в редакторе кода.
Проект содержит папку wwwroot, которая является корневой для веб-сайта. Разверните папку, чтобы просмотреть его содержимое.
Вы можете поместить статическое содержимое сайта — например CSS, изображения и библиотеки JavaScript — непосредственно в нужные пути.
Проект также содержит файлы конфигурации для управления веб-приложением во время выполнения. Стандартная конфигурация приложения хранится в файле appsettings.json. Тем не менее эти параметры можно переопределить с помощью appsettings.Development.json. Разверните файл appsettings.json, чтобы просмотреть файл appsettings.Development.json.
Запуск, отладка и внесение изменений
Чтобы выполнить сборку приложения и запустить его в режиме отладки, нажмите в интегрированной среде разработки кнопку IIS Express. (Кроме того, можно нажать клавишу F5 или выбрать пункт меню Отладка > Начать отладку в строке меню.)
Может также появиться запрос о том, хотите ли вы принять сертификат IIS SSL Express. Чтобы просмотреть код в веб-браузере, выберите Да, а затем снова Да, если появится предупреждение системы безопасности о дальнейшей обработке.
Visual Studio откроет окно браузера. В строке меню вы должны увидеть названия страниц Home (Главная), About (О программе) и Contact (Контакты). (Если названия страниц не отображаются, нажмите кнопку меню, напоминающую гамбургер, чтобы их увидеть.)
Выберите в строке меню страницу About (О программе).
Помимо прочего, на открытой в браузере странице About (О программе) отображается текст, заданный в файле About.cshtml.
Вернитесь в Visual Studio и нажмите клавиши SHIFT+F5, чтобы выйти из режима отладки. Также после этого закроется проект в окне браузера.
В Visual Studio выберите файл About.cshtml. Затем удалите слово another, заменив его словами file and directory.
Выберите файл About.cshtml.cs. Очистите директивы using в начале файла, как описано ниже.
Затем в методе OnGet() замените основную часть таким кодом:
Обратите внимание, что Environment (Среда) и String (Строка) подчеркнуты волнистой линией. Подчеркивание волнистой линией появилось, потому что эти типы находятся за пределами области.
Откройте панель инструментов Список ошибок, чтобы просмотреть там те же самые ошибки. (Если вы не видите панель инструментов Список ошибок, выберите Представление > Список ошибок в верхней строке меню.)
Нажмите клавиши CTRL+S, чтобы сохранить изменения, и нажмите клавишу F5, чтобы открыть проект в веб-браузере.
В верхней части веб-сайта выберите пункт About (О программе), чтобы просмотреть изменения.
Закройте веб-браузер, нажмите клавиши SHIFT+F5, чтобы выйти из режима отладки, и закройте Visual Studio.
Обзор решения
С помощью шаблона проекта создается решение с одним проектом ASP.NET Core, который имеет имя MyCoreApp. Перейдите на вкладку Обозреватель решений, чтобы просмотреть его содержимое.
Разверните папку Pages.
Просмотрите файл Index.cshtml в редакторе кода.
С каждым файлом CSHTML связан файл кода. Чтобы открыть файл кода в редакторе, разверните узел Index.cshtml в обозревателе решений и выберите файл Index.cshtml.cs.
Просмотрите файл Index.cshtml.cs в редакторе кода.
Проект содержит папку wwwroot, которая является корневой для веб-сайта. Разверните папку, чтобы просмотреть его содержимое.
Вы можете поместить статическое содержимое сайта — например CSS, изображения и библиотеки JavaScript — непосредственно в нужные пути.
Проект также содержит файлы конфигурации для управления веб-приложением во время выполнения. Стандартная конфигурация приложения хранится в файле appsettings.json. Тем не менее эти параметры можно переопределить с помощью appsettings.Development.json. Разверните файл appsettings.json, чтобы просмотреть файл appsettings.Development.json.
Запуск, отладка и внесение изменений
Чтобы выполнить сборку приложения и запустить его в режиме отладки, нажмите в интегрированной среде разработки кнопку IIS Express. (Кроме того, можно нажать клавишу F5 или выбрать пункт меню Отладка > Начать отладку в строке меню.)
Может также появиться запрос о том, хотите ли вы принять сертификат IIS SSL Express. Чтобы просмотреть код в веб-браузере, выберите Да, а затем снова Да, если появится предупреждение системы безопасности о дальнейшей обработке.
Visual Studio откроет окно браузера. В строке меню вы должны увидеть названия страниц Home (Главная) и Privacy (Конфиденциальность).
Выберите в строке меню страницу Privacy.
На открытой в браузере странице Privacy отображается текст, заданный в файле Privacy.cshtml.
Вернитесь в Visual Studio и нажмите клавиши SHIFT+F5, чтобы выйти из режима отладки. Также после этого закроется проект в окне браузера.
В Visual Studio откройте файл Privacy.cshtml для редактирования. Удалите строку Use this page to detail your site’s privacy policy (Эта страница предназначена для политики конфиденциальности сайта) и добавьте вместо нее строку This page is under construction as of @ViewData[«TimeStamp»] (Эта страница находится в разработке с [«метка_времени»]).
Теперь изменим код. Выберите файл Privacy.cshtml.cs. Очистите директивы using в начале файла, как описано ниже.
Теперь выберите команду Просмотреть изменения, чтобы увидеть, что изменится.
Затем в методе OnGet() замените основную часть таким кодом:
Обратите внимание, что элемент DateTime подчеркнут двумя волнистыми линиями. Подчеркивание волнистой линией появилось, потому что этот тип находится за пределами области.
Откройте панель инструментов Список ошибок, чтобы просмотреть там те же самые ошибки. (Если вы не видите панель инструментов Список ошибок, выберите Представление > Список ошибок в верхней строке меню.)
Нажмите клавишу F5, чтобы открыть проект в веб-браузере.
В верхней части веб-сайта выберите пункт Privacy (Конфиденциальность), чтобы просмотреть изменения.
Закройте веб-браузер, нажмите клавиши SHIFT+F5, чтобы выйти из режима отладки, и закройте Visual Studio.
Обзор решения
С помощью шаблона проекта создается решение с одним проектом ASP.NET Core, который имеет имя MyCoreApp. Перейдите на вкладку Обозреватель решений, чтобы просмотреть его содержимое.
Разверните папку Pages.
Просмотрите файл Index.cshtml в редакторе кода.
С каждым файлом CSHTML связан файл кода. Чтобы открыть файл кода в редакторе, разверните узел Index.cshtml в обозревателе решений и выберите файл Index.cshtml.cs.
Просмотрите файл Index.cshtml.cs в редакторе кода.
Проект содержит папку wwwroot, которая является корневой для веб-сайта. Разверните папку, чтобы просмотреть его содержимое.
Вы можете поместить статическое содержимое сайта — например CSS, изображения и библиотеки JavaScript — непосредственно в нужные пути.
Проект также содержит файлы конфигурации для управления веб-приложением во время выполнения. Стандартная конфигурация приложения хранится в файле appsettings.json. Тем не менее эти параметры можно переопределить с помощью appsettings.Development.json. Разверните файл appsettings.json, чтобы просмотреть файл appsettings.Development.json.
Запуск, отладка и внесение изменений
Нажмите кнопку IIS Express в среде IDE, чтобы выполнить сборку приложения и запустить его в режиме отладки. (Кроме того, можно нажать клавишу F5 или выбрать пункт меню Отладка > Начать отладку в строке меню.)
Может также появиться запрос о том, хотите ли вы принять сертификат IIS SSL Express. Чтобы просмотреть код в веб-браузере, выберите Да, а затем снова Да, если появится предупреждение системы безопасности о дальнейшей обработке.
Visual Studio откроет окно браузера. В строке меню вы должны увидеть названия страниц Home (Главная) и Privacy (Конфиденциальность).
Выберите в строке меню страницу Privacy.
На открытой в браузере странице Privacy отображается текст, заданный в файле Privacy.cshtml.
Вернитесь в Visual Studio и нажмите клавиши SHIFT+F5, чтобы выйти из режима отладки. Также после этого закроется проект в окне браузера.
В Visual Studio откройте файл Privacy.cshtml для редактирования. Удалите строку Use this page to detail your site’s privacy policy (Эта страница предназначена для политики конфиденциальности сайта) и добавьте вместо нее строку This page is under construction as of @ViewData[«TimeStamp»] (Эта страница находится в разработке с [«метка_времени»]).
Теперь изменим код. Выберите файл Privacy.cshtml.cs. Очистите директивы using в начале файла, как описано ниже.
Теперь выберите команду Просмотреть изменения, чтобы увидеть, что изменится.
Затем создайте строку с текущей датой, отформатированной в соответствии с вашим языком и региональными параметрами или регионом, с помощью метода DateTime.ToString.
В методе OnGet() измените текст на следующий код.
Обратите внимание, что элемент CultureInfo подчеркнут двумя волнистыми линиями. Подчеркивание волнистой линией появилось, потому что этот тип находится за пределами области.
Откройте панель инструментов Список ошибок, чтобы просмотреть там те же самые ошибки. (Если вы не видите панель инструментов Список ошибок, выберите Представление > Список ошибок в верхней строке меню.)
Нажмите клавишу F5, чтобы открыть проект в веб-браузере.
В верхней части веб-сайта выберите пункт Privacy (Конфиденциальность), чтобы просмотреть изменения.
Закройте веб-браузер, нажмите клавиши SHIFT+F5, чтобы выйти из режима отладки, и закройте Visual Studio.
Быстрые ответы на часто задаваемые вопросы
Ниже приведен краткий список вопросов и ответов, с помощью которого вы сможете ознакомиться с некоторыми основными понятиями.
Что такое C#?
C# — это типобезопасный объектно-ориентированный язык программирования, который обладает широкими возможностями, но в то же время прост в обучении.
Что такое ASP.NET Core?
Что такое Visual Studio?
Visual Studio — это интегрированный набор средств разработки. Его можно рассматривать как программу для создания приложений.
Следующие шаги
Поздравляем с завершением этого учебника! Надеемся, что вы узнали что-то новое о C#, ASP.NET Core и интегрированной среде разработки Visual Studio. Дополнительные сведения о создании веб-приложения или веб-сайта с помощью C# и ASP.NET вы найдете в следующих руководствах:
Или узнайте, как контейнеризировать веб-приложения с помощью Docker: