LoveRead.info » Книги » Разная литература » Язык программирования C#9 и платформа .NET5 - Эндрю Троелсен

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

Книгу Язык программирования C#9 и платформа .NET5 - Эндрю Троелсен читаем онлайн бесплатно полную версию! Чтобы начать читать не надо регистрации. Напомним, что читать онлайн вы можете не только на компьютере, но и на андроид (Android), iPhone и iPad. Приятного чтения!

177 0 18:04, 26-08-2023
Язык программирования C#9 и платформа .NET5 - Эндрю Троелсен
26 август 2023

Книга Язык программирования C#9 и платформа .NET5 - Эндрю Троелсен читать онлайн бесплатно без регистрации

В 10-м издании книги описаны новейшие возможности языка C# 9 и .NET 5 вместе с подробным "закулисным" обсуждением, призванным расширить навыки критического мышления разработчиков, когда речь идет об их ремесле. Книга охватывает ASP.NET Core, Entity Framework Core и многое другое наряду с последними обновлениями унифицированной платформы .NET, начиная с улучшений показателей производительности настольных приложений Windows в .NET 5 и обновления инструментария XAML и заканчивая расширенным рассмотрением файлов данных и способов обработки данных. Все примеры кода были переписаны с учетом возможностей последнего выпуска C# 9.

    1 ... 371 372 373 374 375 376 377 378 379 ... 407
    Перейти на страницу:
    помощью информации заголовка в сообщение ответа HTTP.

    Нововведения в ASP.NET Core

    Помимо поддержки базовой функциональности ASP.NET MVC и ASP.NET Web API разработчики ASP.NET Core сумели добавить множество новых средств и улучшений в сравнении с предшествующими инфраструктурами. В дополнение к унификации инфраструктур и контроллеров появились следующие усовершенствования и инновации:

    • встроенное внедрение зависимостей:

    • система конфигурации, основанная на среде и готовая к взаимодействию с облачными технологиями;

    • легковесный, высокопроизводительный и модульный конвейер запросов HTTP.

    • вся инфраструктура основана на мелкозернистых пакетах NuGet;

    • интеграция современных инфраструктур и рабочих потоков разработки для клиентской стороны;

    • введение вспомогательных функций дескрипторов;

    • введение компонентов представлений;

    • огромные улучшения в плане производительности.

    Встроенное внедрение зависимостей

    Внедрение зависимостей (dependency injection — DI) представляет собой механизм для поддержки слабой связанности между объектами. Вместо создания зависимых объектов напрямую или передачи специфических реализаций в классы и/или методы параметры определяются как интерфейсы. Таким образом, классам или методам и классам могут передаваться любые реализации интерфейсов, что разительно увеличивает гибкость приложения.

    Поддержка DI — один из главных принципов, заложенных в переписанную версию ASP.NET Core. Все службы конфигурации и промежуточного ПО через внедрение зависимостей получает не только класс Startup (рассматриваемый позже в главе); ваши специальные классы могут (и должны) быть добавлены в контейнер DI с целью внедрения в другие части приложения. При конфигурировании элемента в контейнере ASP.NET Core DI доступны три варианта времени существования, кратко описанные в табл. 29.8.

    Элементы в контейнере DI могут быть внедрены внутрь конструкторов и методов классов, а также в представления Razor.

    На заметку! Если вы хотите использовать другой контейнер DI, то имейте в виду, что инфраструктура ASP.NET Core проектировалась с учетом такой гибкости. Чтобы узнать, как подключить другой контейнер DI, обратитесь в документацию по ссылке https://docs.microsoft.com/ru-ru/aspnet/core/fundamentals/dependency-injection.

    Осведомленность о среде

    Осведомленность приложений ASP. NET Core об их среде выполнения включает переменные среды хоста и местоположения файлов через экземпляр реализации IWebHostEnvironment. В табл. 29.9 описаны свойства, доступные в этом интерфейсе.

    Помимо доступа к важным файловым путям интерфейс IWebHostEnvironment применяется для выяснения среды времени выполнения.

    Выяснение среды времени выполнения

    Инфраструктура ASP.NET Core автоматически читает значение переменной среды по имени ASPNETCORE_ENVIRONMENT, чтобы установить среду времени выполнения. Если переменная ASPNETCORE_ENVIRONMENT не установлена, тогда ASP.NET Core устанавливает ее значение в Production (производственная среда). Установленное значение доступно через свойство EnvironmentName интерфейса IWebHostEnvironment.

    Во время разработки приложений ASP.NET Core переменная ASPNETCORE_ENVIRONMENT обычно устанавливается с использованием файла настроек или командной строки. Последовательно идущие среды (подготовительная, производственная и т.д.), как правило, задействуют стандартные переменные среды операционной системы.

    Вы можете применять для среды любое имя или одно из трех имен, которые предоставляются статическим классом Environments.

    public static class Environments

    {

      public static readonly string Development = "Development"; // среда разработки

      public static readonly string Staging = "Staging";         // подготовительная среда

      public static readonly string Production = "Production";   // производственная среда

    }

    Класс HostEnvironmentEnvExtensions предлагает расширяющие методы на IHostEnvironment для работы со свойством имени среды, которые описаны в табл. 29.10.

    Ниже перечислены некоторые примеры использования настройки среды:

    • выяснение, какие конфигурационные файлы загружать:

    • установка параметров отладки, ошибок и ведения журнала:

    • загрузка файлов JavaScript и CSS, специфичных для среды.

    Вы увидите все это в действии при построении приложений AutoLot.Api и AutoLot.Mvc в последующих двух главах.

    Конфигурация приложений

    В предшествующих версиях 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.

    Извлечение настроек

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

    Configuration.GetSection("Logging")

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

    Configuration.GetConnectionString("AutoLot")

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

    Развертывание приложений ASP.NET Core

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

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

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

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

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

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

    1 ... 371 372 373 374 375 376 377 378 379 ... 407
    Перейти на страницу:
    1. Жалоба
    Отзывы - 0

    Прочитали книгу? Предлагаем вам поделится своим отзывом от прочитанного(прослушанного)! Ваш отзыв будет полезен читателям, которые еще только собираются познакомиться с произведением.


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

    • 1. Просьба отказаться от дискриминационных высказываний. Мы защищаем право наших читателей свободно выражать свою точку зрения. Вместе с тем мы не терпим агрессии. На сайте запрещено оставлять комментарий, который содержит унизительные высказывания или призывы к насилию по отношению к отдельным лицам или группам людей на основании их расы, этнического происхождения, вероисповедания, недееспособности, пола, возраста, статуса ветерана, касты или сексуальной ориентации.
    • 2. Просьба отказаться от оскорблений, угроз и запугиваний.
    • 3. Просьба отказаться от нецензурной лексики.
    • 4. Просьба вести себя максимально корректно как по отношению к авторам, так и по отношению к другим читателям и их комментариям.

    Надеемся на Ваше понимание и благоразумие. С уважением, администратор LoveRead.info.


    Установить VPN и читай слушай бесплатно

    Новые отзывы

    1. Лариса Лариса04 июнь 12:43 Да, просто до слез похоже на сериал ,,Даррел,,... Смерть в райском уголке - Эмили Салливан
    2. Stmara Stmara02 июнь 22:44 Приятная история, чтобы скоротать вечер. Любимая книга из последних "Любовь со смертью", также очень понравилась -"Суженная... Сердце космического дракона - Ольга Вадимовна Гусейнова
    3. Alex Alex01 июнь 17:12 💩💩💩🖕🖕🖕🖕🖕🖕🖕... Игровой момент II - Александр Андреевич Бодров
    Все комметарии
    Новинки бесплатной онлайн библиотеки