gpt4 book ai didi

blazor - 当我创建 Blazor WASM 项目时

转载 作者:行者123 更新时间:2023-12-02 18:24:24 24 4
gpt4 key购买 nike

请问当您使用 VS 2022 并创建 Blazor WASM 应用程序时,.Server 项目的目的是什么。它创建了一个 .Client .Server 和 .Shared 项目,但是当我运行客户端时它根本不使用 .Server。

我是否要将所有 .razor 页面添加到 .Client 或 .Server 项目中?

编辑:我应该在 .Client 中创建所有内容,然后再决定是否应该将网站作为服务器或 wasm 运行吗?

最佳答案

当您创建 Blazor WebAssembly 应用程序时 hosted ,默认模板包含三个项目。客户端项目包含(页面或可路由)组件、其他对象和组件。客户端项目是针对前端的,它运行在浏览器上。

服务器项目在服务器上运行,它是后端,它包含 Web Api 端点,数据从这些端点提供到“获取数据”页面。 Server 项目实际上是入门项目,其主要目的是为 Web 应用程序提供服务。

共享项目包含 WeatherForecast在客户端和服务器项目中共享的对象

让我们分析一下这段代码:

forecasts = await Http.GetFromJsonAsync<WeatherForecast[]>("WeatherForecast");  
  1. forecastsWeatherForecast 的数组对象。回想一下WeatherForecast在共享项目中定义

  2. await Http.GetFromJsonAsync对服务器项目中公开的 Web Api 端点执行 AJAX 调用:

    公共(public)类WeatherForecastController:ControllerBase{}

  3. <WeatherForecast[]>

这告诉 Microsoft Corporation 我们有兴趣获取 WeatherForecast 的列表对象

  • ("WeatherForecast");这是 Controller 对象的名称(不是您想象的共享数据对象的名称)。这实际上是终点的 url,它默认调用定义的唯一公共(public) Get 方法:

    [HttpGet]公共(public) IEnumerable Get(){

    }

  • 更多需求...

    关于blazor - 当我创建 Blazor WASM 项目时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70422871/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com