当前位置: 首页 > news >正文

Blazor-Blazor呈现概念

静态和交互式呈现概念

在Blazor开发中,Razor 组件具备两种重要的呈现方式,分别是静态呈现和交互式呈现。

静态呈现

也被称为静态渲染,是一种典型的服务器端方案。在这种模式下,组件呈现时,用户与.NET/C# 代码之间缺乏交互能力。这就好比用户在浏览一个纯展示的网页,只能观看页面上已经生成好的内容,却无法与后端代码进行互动。尽管 JavaScript 和 HTML DOM 事件依然能够正常发挥作用,比如页面上的按钮点击可以触发 JavaScript 函数来改变页面元素的样式,但客户端上发生的任何用户事件,诸如点击、输入等,都无法借助运行在服务器上的.NET 来处理。这种静态呈现方式,在一些对交互性要求不高,主要以展示大量稳定内容为主的场景中应用广泛,例如公司的产品介绍页面、新闻资讯展示页面等,它能高效地将内容呈现给用户,减少服务器的交互处理压力。

交互式呈现

当组件以交互式呈现时,它拥有了通过 C# 代码处理.NET 事件的强大能力。这里的.NET 事件处理,存在两种处理环境。一方面,在服务器端,由ASP.NET Core 运行时来处理这些事件,这适用于对安全性、计算资源要求较高,需要在服务器端进行复杂逻辑处理的场景,比如电商系统中的订单处理、用户权限验证等功能。另一方面,在客户端的浏览器中,基于 WebAssembly 的 Blazor 运行时能够处理事件,这使得用户在浏览器端就能获得即时的交互反馈,极大地提升了用户体验,像一些在线表单填写、实时数据可视化展示等功能,就常常依赖这种客户端的事件处理机制。这种交互式呈现为开发者构建高度动态和交互性强的 Web 应用提供了有力支持,让用户与应用之间的互动更加流畅和自然。

客户端和服务器呈现概念

客户端呈现 (CSR)

意味着最终 HTML 标记由客户端上的 .NET WebAssembly 运行时生成。 对于这种类型的呈现,应用的客户端生成的 UI 没有 HTML 从服务器发送到客户端。 假定用户可与页面交互。 没有静态客户端呈现之类的概念。 CSR 假定是交互式的,因此行业或 文档中不使用“交互式客户端呈现”和“Blazor CSR”。

服务器侧呈现 (SSR)

意味着最终 HTML 标记由服务器上的 ASP.NET Core 运行时生成。 HTML 通过网络发送到客户端,供客户端的浏览器显示。 对于这种类型的呈现,客户端不会为应用的服务器生成的 UI 创建 HTML。 SSR 可以是两种类型:
○ 静态 SSR:服务器生成静态 HTML,它不提供用户交互性或维护 Razor 组件状态。
○ 交互式 SSR:Blazor 事件允许用户交互,并且 Razor 组件状态由 Blazor 框架维护。

http://www.lryc.cn/news/526330.html

相关文章:

  • 14-6-2C++的list
  • StarRocks常用命令
  • 激光雷达和相机早期融合
  • PMP–一、二、三模–分类–12.采购管理
  • C++ 标准模板库 (STL, Standard Template Library)
  • 从spec到iso的koji使用
  • 【记录自开发的SQL工具】工具字符拼接、Excel转sql、生成编码、生成测试数据
  • Cesium特效——城市白模的科技动效的各种效果
  • VS Code i18n国际化组件代码code显示中文配置 i18n ally
  • C++ —— 智能指针 unique_ptr (上)
  • 技术 · 创作 · 生活 | 我的 2024 全面复盘
  • 表的增删改查(MySQL)
  • 【设计模式】JAVA 策略 工厂 模式 彻底告别switch if 等
  • 基于Springboot用axiospost请求接收字符串参数为null的解决方案
  • 最长递增——蓝桥杯
  • 【MFC】C++所有控件随窗口大小全自动等比例缩放源码(控件内字体、列宽等未调整) 20250124
  • C#标准Mes接口框架(持续更新)
  • 【Uniapp-Vue3】动态设置页面导航条的样式
  • SQL 递归 ---- WITH RECURSIVE 的用法
  • 期权帮|如何利用股指期货进行对冲套利?
  • INCOSE需求编写指南-第1部分:介绍
  • FFPlay命令全集合
  • Mono里运行C#脚本34—内部函数调用的过程
  • rust feature h和 workspace相关知识 (十一)
  • -bash: ./uninstall.command: /bin/sh^M: 坏的解释器: 没有那个文件或目录
  • 【Redis】Redis入门以及什么是分布式系统{Redis引入+分布式系统介绍}
  • C#高级:常用的扩展方法大全
  • Consul持久化配置报错1067---consul_start
  • 「 机器人 」扑翼飞行器控制策略浅谈
  • Qt信号与槽底层实现原理