如何在.NET 8中使用Blazor Web App(WebAssembly)托管服务器端控制器?

hgc7kmma  于 2023-11-20  发布在  .NET
关注(0)|答案(1)|浏览(412)

在.NET 8之前,使用Blazor WebAssembly应用程序托管服务器端控制器很容易。您只需单击项目模板中的“ASP.NET Core Hosted”复选框,就会为您创建一个ASP.NET Core项目,该项目将托管Blazor WebAssembly客户端。
随着.NET 8的发布,引入了一个名为“Blazor Web App”的新模板,但它没有“ASP.NET Core Hosted”复选框


的数据
那么我应该如何托管服务器端控制器呢?Blazor Web App是否引入了一个新的系统来处理客户端到服务器的通信?
Microsoft documentation说:
我们删除了Blazor Server模板,并且从Blazor WebAssembly模板中删除了ASP.NET Core Hosted选项。使用Blazor Web App模板时,这两种情况都由选项表示。
但我不确定这种情况如何“在使用Blazor Web App模板时由选项表示”

d8tt03nd

d8tt03nd1#

当你创建一个“Blazor Web App”时,你已经得到了一个客户端和一个服务器项目。共享(DTO)项目丢失了,但你可以很容易地添加它,它只是一个类库。
将AddControllers()和MapControllers()添加到服务器的Program.cs中,然后就可以开始添加所需的控制器了。

  1. ...
  2. builder.Services.AddControllers();
  3. var app = builder.Build();
  4. ...
  5. app.MapControllers();
  6. app.Run();

字符串

相关问题