如何将 ASP.NET web API 添加到默认服务器 ASP.NET Blazor 默认生成的解决方案

How do you add an ASP.NET web API to the default SERVER ASP.NET Blazor Default Generated Solution

将 Web api 作为项目添加到默认 ASP.NET Blazor 解决方案的最佳方法是什么? 使用 visual studio 2019 时,当您 select Blazor 服务器创建新的 solution/project.

时,您不再获得服务器和 Web 项目

我找到了浏览多个博客的方法,但有人提到微软可能会停止此操作。

正在寻找最佳方法。
我需要将 API 添加到 ASP.NET Blazor Side 项目的原因是为了让 SyncFusion DataGrid 可以绑定到它。看: https://blazor.syncfusion.com/documentation/datagrid/data-binding/#entity-framework

这是我想尝试的:

使用“options.EnableEndpointRouting”方法。

使用 Microsoft.AspNetCore.Mvc;

services.AddMvc(选项 => options.EnableEndpointRouting = false).SetCompatibilityVersion(CompatibilityVersion.Version_3_0);

app.UseMvcWithDefaultRoute();

这是否被认为是未来安全或受支持的方式?

服务器端 Blazor 由 VS 2019 向导创建:

生成的解决方案如下所示:

我联系了 Syncfusion 支持,他们提供了一个使用数据网格跳过 API 的示例。

下面 link 处的示例实际上在 Blazor 页面代码中有 Entity Framework 调用。我实现了一个包装 Entity Framework.

的服务

效果很好。也对 Dapper 使用了相同的方法。

https://www.syncfusion.com/forums/165744/how-to-add-a-supporting-web-api-and-routing-to-support-databinding-in-sf-grid-on-blazor