Использовать SParePrerendering устаревшим с .net core 3.0 и выше, какова альтернатива? - PullRequest
0 голосов
/ 24 октября 2019

UseSpaPrerendering устарела с .net core 3.0 и выше, какова альтернатива для рендеринга на стороне сервера? Как перейти на .net core 3.0, если я использую SSR в 2.1

Нет документации по будущему пути по этому вопросу. Документ Microsoft говорит: «Внимание, этот API устарел.»

https://docs.microsoft.com/en-us/dotnet/api/microsoft.aspnetcore.builder.spaprerenderingextensions?view=aspnetcore-2.2

Ответы [ 2 ]

0 голосов
/ 26 октября 2019

Уверен, у умных людей Microsoft большие планы на Blazor.

https://dotnet.microsoft.com/apps/aspnet/web-apps/blazor

0 голосов
/ 24 октября 2019

В ASP.NET Core 3.0 поддержка SPA работает через промежуточное ПО для указания на каталог (независимо от того, как вы его называете). Это делается путем внедрения промежуточного программного обеспечения в качестве последнего шага в методе настройки Startup:

    public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
    {

      // ...

      if (!env .IsDevelopment())
      {
        app.UseSpaStaticFiles();
      }

      app.UseRouting();

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

      app.UseSpa(spa =>
      {
        // To learn more about options for serving an Angular SPA from ASP.NET Core,
        // see https://go.microsoft.com/fwlink/?linkid=864501

        spa.Options.SourcePath = "ClientApp";

        if (env.IsDevelopment())
        {
          spa.UseAngularCliServer(npmScript: "start");
        }
      });
    }

Для этого требуется два вызова: UseSpaStaticFiles и UseSpa. Эти вызовы настраивают возможность получать вызовы из сгенерированного index.html, который Angular-CLI создает для вас. В этом случае вы увидите, что во время разработки он запустит 'npm start' для вас;это часть того, как он запускает сборку разработки приложения Angular.

Это похоже на то, как промежуточное программное обеспечение работает и для React. В настоящее время нет поддержки других платформ (например, Vue, Backbone и т. Д.). Другое ограничение заключается в том, что хотя существует старая версия промежуточного программного обеспечения Spa, которая работала в ASP.NET Core 2.0, новая версия работает только с ASP.NET Core 2.1 и более поздними версиями.

Есть хорошая статья, объясняющаядругие методы, называемые Одностраничные приложения и ASP.NET Core 3.0

Надеемся, что это поможет любому, кто смешается с новыми функциями .net core 3.0 spa.

...