如何将 ASP.NET Core MVC API 和 Blazor WebAssembly 作为单个解决方案运行和托管?

Sim*_*mon 5 asp.net-mvc single-page-application asp.net-core blazor blazor-client-side

我们有一个单页应用程序,它在客户端使用 JavaScript 框架 knockout.js 运行。在服务器端,该解决方案有一个 ASP.NET MVC,其中包括一些用于我们的 REST API 的 ApiController 类。我们希望通过 Blazor WebAssembly 交换客户端 JavaScript 代码。我们如何将 Blazor WebAssembly 与 ASP.NET MVC 结合使用。大多数在线文档仅显示如何通过 Blazor Server 使用 Blazor WebAssembly。我们不需要 Blazor Server,因为我们已经有了 MVC,并且希望保留由 ApiController 类实现的 REST 接口。

第一个简单的原型解决方案有一个 Blazor WebAssembly 项目和一个 ASP.NET Core MVC 项目:

在此输入图像描述

问题:当可以通过按 strg+F5 (有端口)启动客户端 Blazor WebAssembly 项目 (ToDoList) 或我可以启动服务器端 MVC 项目 (ToDoListAPI) 但不能同时启动客户端和服务器时,正如我习惯使用 JavaScript 编写的 SPA 一样。

agu*_*ars 8

  • 右键单击您的解决方案
  • 单击属性
  • 选择多个启动项目
  • 选择对要调试的项目启动操作

或者如果您只想调试一个项目

  • 在要启动但不进行调试的项目文件夹中打开命令提示符
  • 发射dotnet run