Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю
dotnet add AutoLot.Api reference ..Chapter_23AutoLot.Dal
dotnet add AutoLot.Api reference ..Chapter_23AutoLot.Models
dotnet add AutoLot.Api reference AutoLot.Services
Создайте проект AutoLot.Mvc, добавьте его в решение, добавьте пакеты NuGet и добавьте ссылки на проекты:
dotnet new mvc -lang c# -n AutoLot.Mvc -au none -o .AutoLot.Mvc -f net5.0
dotnet sln AutoLot.sln add AutoLot.Mvc
rem Добавить ссылки на проекты
dotnet add AutoLot.Mvc reference ..Chapter_23AutoLot.Models
dotnet add AutoLot.Mvc reference ..Chapter_23AutoLot.Dal
dotnet add AutoLot.Mvc reference AutoLot.Services
rem Добавить пакеты
dotnet add AutoLot.Mvc package AutoMapper
dotnet add AutoLot.Mvc package System.Text.Json
dotnet add AutoLot.Mvc package LigerShark.WebOptimizer.Core
dotnet add AutoLot.Mvc package Microsoft.Web.LibraryManager.Build
dotnet add AutoLot.Mvc package Microsoft.EntityFrameworkCore.SqlServer
dotnet add AutoLot.Mvc package Microsoft.VisualStudio.Web.CodeGeneration.Design
На этом настройка с применением командной строки завершена. Она намного эффективнее, если вы не нуждаетесь в графическом пользовательском интерфейсе Visual Studio.
Запуск приложений ASP.NET Core
Веб-приложения предшествующих версий ASP.NET всегда запускались с использованием IIS (или IIS Express). В ASP.NET Core приложения обычно запускаются с применением веб-сервера Kestrel, но существует вариант использования IIS, Apache, Nginx и т.д. через обратный прокси-сервер между Kestrel и другим веб-сервером. В результате происходит не только отход в сторону от строгого применения IIS, чтобы сменить модель развертывания, но и изменение возможностей разработки.
Во время разработки приложения теперь можно запускать следующим образом:
• из Visual Studio с использованием IIS Express;
• из Visual Studio с применением Kestrel;
• из командной строки .NET CLI с использованием Kestrel;
• из Visual Studio Code (VS Code) через меню Run (Запуск) с применением Kestrel;
• из VS Code через окно терминала с использованием .NET CLI и Kestrel.
Конфигурирование настроек запуска
Файл launchsettings.json (расположенный в узле Properties (Свойства) окна Solution Explorer) конфигурирует способ запуска приложения во время разработки под управлением Kestrel и IIS Express. Ниже приведено его содержимое в справочных целях (ваши порты IIS Express будут другими):
{
"$schema": "http://json.schemastore.org/launchsettings.json",
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
(window.adrunTag = window.adrunTag || []).push({v: 1, el: 'adrun-4-390', c: 4, b: 390})"applicationUrl": "http://localhost:42788",
"sslPort": 44375
}
},
"profiles": {
"IIS Express": {
"commandName": "IISExpress",
"launchBrowser": true,
"launchUrl": "swagger",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
},
"AutoLot.Api": {
"commandName": "Project",
"dotnetRunMessages": "true",
"launchBrowser": true,
"launchUrl": "swagger",
"applicationUrl": "https://localhost:5001;http://localhost:5000",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
}
}
}
Использование Visual Studio
В разделе iisSettings определены настройки запуска приложения с применением IIS Express в качестве веб-сервера. Наиболее важными настройками, на которые следует обратить внимание, являются настройка applicationUrl, определяющая порт, и блок environmentVariables, где определяется среда времени выполнения. При запуске приложения в режиме отладки эта настройка заменяет собой любую настройку среды машины. Второй профиль (AutoLot.Mvc или AutoLot.Api в зависимости от того, какой проект используется) определяет настройки для ситуации, когда приложение запускается с применением Kestrel в качестве веб-сервера. Профиль определяет applicationUrl и порты плюс среду.
Меню Run в Visual Studio позволяет выбрать либо IIS Express, либо Kestrel, как показано на рис. 29.3. После выбора профиля проект можно запустить, нажав <F5> (режим отладки), нажав <Ctrl+F5> (эквивалентно выбору пункта Start Without Debugging (Запустить без отладки) в меню Debug (Отладка)) или щелкнув на кнопке запуска с зеленой стрелкой (эквивалентно выбору пункта Start Debugging (Запустить с отладкой) в меню Debug).