`
Читать книги » Книги » Компьютеры и Интернет » Базы данных » Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю

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

1 ... 638 639 640 641 642 ВПЕРЕД
Перейти на страницу:

<b>    }</b>

    public async Task&lt;IViewComponentResult&gt; InvokeAsync()

    {

      var makes = await _serviceWrapper.GetMakesAsync();

      if (makes == null)

      {

        return new ContentViewComponentResult(&quot;Unable to get the makes&quot;);

      }

      return View(&quot;MenuView&quot;, makes);

    }

  }

}

Совместный запуск приложений AutoLot.Mvc и AutoLot.Api

Приложение AutoLot.Mvc рассчитывает на то, что приложение AutoLot.Api должно быть запущено. Это можно сделать с помощью Visual Studio, командной строки или через комбинацию того и другого.

На заметку! Вспомните, что приложения AutoLot.Mvc и AutoLot.Api сконфигурированы на воссоздание базы данных при каждом их запуске. Обязательно отключите воссоздание хотя бы в одном из приложений, иначе возникнет конфликт. Чтобы ускорить отладку, отключите воссоздание в обоих приложений при тестировании функциональности, которая не изменяет данные.

Использование Visual Studio

Вы можете сконфигурировать среду Visual Studio на запуск нескольких проектов одновременно. Щелкните правой кнопкой мыши на имени решения в окне Solution Explorer, выберите в контекстном меню пункт Select Startup Projects (Выбрать стартовые проекты) и установите действия для проектов AutoLot.Api и AutoLot.Mvc в Start (Запуск), как показано на рис. 31.11.

После нажатия клавиши <F5> (или щелчка на кнопке запуска с зеленой стрелкой) оба проекта запустятся. При этом возникает ряд сложностей. Первая сложность — среда Visual Studio запоминает последний профиль, который применялся для запуска приложения. Это значит, что если вы использовали для запуска AutoLot.Api веб-сервер IIS Express, то запуск обоих приложений приведет к запуску AutoLot.Api с применением IIS Express, поэтому порт в настройках служб окажется некорректным.

Проблему легко устранить. Либо измените порты в файле appsettings.development.json, либо запустите приложение под управлением Kestrel, прежде чем конфигурировать совместный запуск приложений.

Вторая сложность связана с синхронизацией. Оба проекта стартуют практически одновременно. Если вы сконфигурировали приложение AutoLot.Api на воссоздание базы данных при каждом его запуске, тогда она не будет готова для приложения AutoLot.Mvc, когда компонент представления запускается с целью построения меню. Проблему решит быстрое обновление браузера, отображающего AutoLot.Mvc (как только вы увидите пользовательский интерфейс Swagger в AutoLot.Api).

(window.adrunTag = window.adrunTag || []).push({v: 1, el: 'adrun-4-390', c: 4, b: 390})

Использование командной строки

Откройте окно командной строки в каждом каталоге проекта и введите команду dotnet watch run. Это позволит управлять порядком и синхронизацией, а также гарантирует, что приложения выполняются с применением Kestrel, но не IIS. Информацию об отладке при запуске из командной строки ищите в главе 29.

Резюме

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

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

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

Разработка начиналась с создания контроллера CarsController и всех методов действий. Далее были добавлены специальные вспомогательные функции дескрипторов и в заключение созданы все представления, касающиеся записей Car. Конечно, был построен только один контроллер и его представления, но с помощью продемонстрированного шаблона можно создать контроллеры и представления для всех сущностей AutoLot.

1 ... 638 639 640 641 642 ВПЕРЕД
Перейти на страницу:

Откройте для себя мир чтения на siteknig.com - месте, где каждая книга оживает прямо в браузере. Здесь вас уже ждёт произведение Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю, относящееся к жанру Базы данных. Никаких регистраций, никаких преград - только вы и история, доступная в полном формате. Наш литературный портал создан для тех, кто любит комфорт: хотите читать с телефона - пожалуйста; предпочитаете ноутбук - идеально! Все книги открываются моментально и представлены полностью, без сокращений и скрытых страниц. Каталог жанров поможет вам быстро найти что-то по настроению: увлекательный роман, динамичное фэнтези, глубокую классику или лёгкое чтение перед сном. Мы ежедневно расширяем библиотеку, добавляя новые произведения, чтобы вам всегда было что открыть "на потом". Сегодня на siteknig.com доступно более 200000 книг - и каждая готова стать вашей новой любимой. Просто выбирайте, открывайте и наслаждайтесь чтением там, где вам удобно.

Комментарии (0)