Интеграция Angular в веб-API ASP.NET Core: подробное руководство

В этой статье блога мы рассмотрим различные методы интеграции Angular с веб-API ASP.NET Core. Объединив мощь интерфейсных возможностей Angular с надежностью внутренней инфраструктуры ASP.NET Core, мы можем создавать эффективные и динамичные веб-приложения. Мы рассмотрим несколько подходов к плавной интеграции этих технологий, а также приведем примеры кода и пошаговые инструкции.

Метод 1. Создание отдельного приложения Angular
Один подход заключается в создании отдельного приложения Angular, а затем использовании веб-API ASP.NET Core в качестве источника данных. Этот метод позволяет четко разделить задачи между внешними и внутренними компонентами. Вот как этого можно добиться:

  1. Создайте новое приложение Angular с помощью Angular CLI.

    ng new my-app
  2. Создайте приложение Angular.

    ng build --prod
  3. Скопируйте содержимое папки distвстроенного приложения Angular в папку wwwrootвеб-API ASP.NET Core.

  4. Настройте веб-API ASP.NET Core для обслуживания статических файлов приложения Angular. В файле Startup.csдобавьте следующий код к методу Configure:

    app.UseStaticFiles();
  5. Обновите маршрут по умолчанию веб-API ASP.NET Core для перенаправления в приложение Angular. В файле Startup.csизмените метод Configureследующим образом:

    app.UseEndpoints(endpoints =>
    {
    endpoints.MapControllerRoute(
        name: "default",
        pattern: "{controller}/{action}/{id?}",
        defaults: new { controller = "Home", action = "Index" });
    endpoints.MapFallbackToController("Index", "Home");
    });

Метод 2: Angular и ASP.NET Core Web API в одном проекте.
Другой подход заключается в том, чтобы разместить как интерфейс Angular, так и серверную часть веб-API ASP.NET Core в одном проекте. Этот метод упрощает разработку и развертывание, поскольку все содержится в одном решении. Вот как это можно сделать:

  1. Создайте новый проект веб-API ASP.NET Core с помощью Visual Studio.

  2. Установите Angular CLI глобально на свой компьютер.

    npm install -g @angular/cli
  3. Добавьте приложение Angular в проект веб-API ASP.NET Core.

    ng new my-app
  4. Настройте веб-API ASP.NET Core для обслуживания статических файлов приложения Angular. В файле Startup.csдобавьте следующий код к методу Configure:

    app.UseStaticFiles();
  5. Обновите маршрут по умолчанию веб-API ASP.NET Core для перенаправления в приложение Angular. В файле Startup.csизмените метод Configureследующим образом:

    app.UseEndpoints(endpoints =>
    {
    endpoints.MapControllerRoute(
        name: "default",
        pattern: "{controller}/{action}/{id?}",
        defaults: new { controller = "Home", action = "Index" });
    endpoints.MapFallbackToController("Index", "Home");
    });

Интеграция Angular с веб-API ASP.NET Core предлагает разработчикам мощную комбинацию для создания современных веб-приложений. В этой статье мы рассмотрели два метода: создание отдельного приложения Angular и интеграция его с веб-API ASP.NET Core, а также использование Angular и веб-API ASP.NET Core в одном проекте. У каждого подхода есть свои преимущества, и вы можете выбрать тот, который лучше всего соответствует требованиям вашего проекта.

Не забывайте использовать Angular CLI и возможности ASP.NET Core для оптимизации процесса разработки и создания надежных, масштабируемых приложений.