Читаем Язык программирования C#9 и платформа .NET5 полностью

В предшествующих версиях ASP.NET для конфигурирования служб и приложений применялся файл web.config, и разработчики получали доступ к конфигурационным настройкам через класс System.Configuration. Разумеется, помещение в файл web.config всех конфигурационных настроек для сайта, а не только специфичных для приложения, делало его (потенциально) запутанной смесью.

В ASP.NET Core была введена значительно более простая система конфигурации. По умолчанию она основывается на простых файлах JSON, которые хранят конфигурационные настройки в виде пар "имя-значение". Стандартный файл для конфигурации называется appsettings.json. Начальная версия файла appsettings.json (созданная шаблонами для веб-приложения ASP.NET Core и службы API) просто содержит конфигурационную информацию для регистрации в журнале, а также настройку для ограничения хостов:

{

  "Logging": {

    "LogLevel": {

      "Default": "Information",

      "Microsoft": "Warning",

      "Microsoft.Hosting.Lifetime": "Information"

    }

  },

  "AllowedHosts": "*"

}

Шаблон также создает файл appsettings.Development.json. Система конфигурации работает в сочетании с осведомленностью о среде времени выполнения, чтобы загружать дополнительные конфигурационные файлы на основе среды времени выполнения. Цель достигается инструктированием системы конфигурации о необходимости загрузки файла с именем appsettings.{имя_среды}.json после файла appSettings.json. В случае запуска приложения в среде разработки после файла начальных настроек загружается файл appsettings.Development.json. Если запуск происходит в подготовительной среде, тогда загружается файл appsettings.Staging.json. Важно отметить, что при загрузке более одного файла любые настройки, присутствующие в нескольких файлах, переопределяются настройками из последнего загруженного файла; они не являются аддитивными. Все конфигурационные настройки получаются через экземпляр реализации IConfiguration, доступный посредством системы внедрения зависимостей ASP.NET Core.

<p id="AutBody_Root1363"><strong>Извлечение настроек</strong></p>

После построения конфигурации к настройкам можно обращаться с использованием традиционного семейства методов GetXXX, таких как GetSection, GetValue и т.д.:

Configuration.GetSection("Logging")

Также доступно сокращение для получения строк подключения:

Configuration.GetConnectionString("AutoLot")

Дополнительные возможности конфигурации будут повсеместно применяться в оставшемся материале книги.

<p id="AutBody_Root1364"><strong>Развертывание приложений ASP.NET Core</strong></p>

Приложения ASP.NET предшествующих версий могли развертываться только на серверах Windows с использованием IIS. Инфраструктуру ASP.NET Core можно разворачивать под управлением многочисленных операционных систем многими способами, в том числе и вне веб-сервера. Ниже перечислены высокоуровневые варианты:

• на сервере Windows (включая Azure) с применением IIS;

• на сервере Windows (включая службы приложений Azure) вне IIS;

• на сервере Linux с использованием Apache или NGINX;

• под управлением Windows или Linux в контейнере Docker.

Подобная гибкость позволяет организациям выбирать платформу развертывания, которая имеет набольший смысл для организации, включая популярные модели развертывания на основе контейнеров (скажем, Docker), и не ограничиваться серверами Windows.

<p id="AutBody_Root1365"><strong>Легковесный и модульный конвейер запросов HTTP</strong></p>

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

<p id="AutBody_Root1366"><strong>Создание и конфигурирование решения</strong></p>

Теперь, когда у вас есть опыт работы с рядом основных концепций ASP.NET Core, самое время приступить к построению приложений ASP.NET Core. Проекты ASP.NET Core можно создавать с применением либо Visual Studio, либо командной строки. Оба варианта будут раскрыты в последующих двух разделах.

<p id="AutBody_Root1367"><strong>Использование Visual Studio</strong></p>

Преимущество Visual Studio связано с наличием графического пользовательского интерфейса, который поможет вам пройти через процесс создания решения и проектов, добавления пакетов NuGet и создания ссылок между проектами.

<p id="AutBody_Root1368"><strong>Создание решения и проектов</strong></p>
Перейти на страницу:

Похожие книги

97 этюдов для архитекторов программных систем
97 этюдов для архитекторов программных систем

Успешная карьера архитектора программного обеспечения требует хорошего владения как технической, так и деловой сторонами вопросов, связанных с проектированием архитектуры. В этой необычной книге ведущие архитекторы ПО со всего света обсуждают важные принципы разработки, выходящие далеко за пределы чисто технических вопросов.?Архитектор ПО выполняет роль посредника между командой разработчиков и бизнес-руководством компании, поэтому чтобы добиться успеха в этой профессии, необходимо не только овладеть различными технологиями, но и обеспечить работу над проектом в соответствии с бизнес-целями. В книге более 50 архитекторов рассказывают о том, что считают самым важным в своей работе, дают советы, как организовать общение с другими участниками проекта, как снизить сложность архитектуры, как оказывать поддержку разработчикам. Они щедро делятся множеством полезных идей и приемов, которые вынесли из своего многолетнего опыта. Авторы надеются, что книга станет источником вдохновения и руководством к действию для многих профессиональных программистов.

Билл де Ора , Майкл Хайгард , Нил Форд

Программирование, программы, базы данных / Базы данных / Программирование / Книги по IT
Программирование. Принципы и практика использования C++ Исправленное издание
Программирование. Принципы и практика использования C++ Исправленное издание

Специальное издание самой читаемой и содержащей наиболее достоверные сведения книги по C++. Книга написана Бьярне Страуструпом — автором языка программирования C++ — и является каноническим изложением возможностей этого языка. Помимо подробного описания собственно языка, на страницах книги вы найдете доказавшие свою эффективность подходы к решению разнообразных задач проектирования и программирования. Многочисленные примеры демонстрируют как хороший стиль программирования на С-совместимом ядре C++, так и современный -ориентированный подход к созданию программных продуктов. Третье издание бестселлера было существенно переработано автором. Результатом этой переработки стала большая доступность книги для новичков. В то же время, текст обогатился сведениями и методиками программирования, которые могут оказаться полезными даже для многоопытных специалистов по C++. Не обойдены вниманием и нововведения языка: стандартная библиотека шаблонов (STL), пространства имен (namespaces), механизм идентификации типов во время выполнения (RTTI), явные приведения типов (cast-операторы) и другие. Настоящее специальное издание отличается от третьего добавлением двух новых приложений (посвященных локализации и безопасной обработке исключений средствами стандартной библиотеки), довольно многочисленными уточнениями в остальном тексте, а также исправлением множества опечаток. Книга адресована программистам, использующим в своей повседневной работе C++. Она также будет полезна преподавателям, студентам и всем, кто хочет ознакомиться с описанием языка «из первых рук».

Бьерн Страуструп , Бьёрн Страуструп , Валерий Федорович Альмухаметов , Ирина Сергеевна Козлова

Программирование, программы, базы данных / Базы данных / Программирование / Учебная и научная литература / Образование и наука / Книги по IT