ASP.NET Core 8 的 Web App

Web App

Web App 与 Web API 的不同之处在于包含 UI 部分,所谓的 UI 就是 HTML 页面。

Web App 支持几种渲染HTML 的方式:

  • 服务端渲染
  • 客户端渲染
  • 混合渲染

服务端渲染

服务端渲染UI是在浏览器请求的时候,服务端生成 HTML,然后返回给浏览器。

优点是:

  • 减轻客户端的压力
    • 服务端生成 HTML,适配各种浏览器
    • 极少从 Client 端拉取 JS 代码
  • 可以保护服务端的数据和安全
    • 可以保护服务端的资源,包括数据库访问,API 接口等。
  • 可以针对搜索引擎进行优化

缺点是:

  • 对服务端的压力很大,包括 CPU 和内存
  • 用户交互需要从服务端绕一圈生成 UI

一般用于:

  • 数据只读的网站
  • 静态网页
  • 管理系统

ASP.NET Core 8 支持的服务端渲染技术:

ASP.NET Core Razor Pages

Razor Pages 是基于页面的模型,可以用于基于页面或者基于 Form 的网站。

Razor Pages的优点:

  • 页面的代码都和页面一起。类似 xaml 和 xaml.cs,这里是 cshtml 和 cshtml.cs
  • View 的逻辑和 View 一起,逻辑清晰。
  • 方便分组 View。

ASP.NET Core MVC

ASP.NET Core MVC 使用 MVC 架构模式,分成 Models, Views 和 Controllers。

客户端的请求发送到Controllers,Controllers处理请求,然后根据Models返回Views。

MVC 的优点:

  • 方便开发大型网站
  • 结构清晰,职责分离
  • 松耦合

客户端渲染

客户端渲染UI是在客户端动态渲染 UI,直接更新浏览器 DOM。

优点是:

  • 可以实时交换,不需要从服务端绕一圈。
  • 不需要提交请求到服务端就可以增量更新DOM。
  • 支持离线运行。
  • 减轻服务端的压力和成本。

缺点是:

  • 第一次加载时,需要把代码下载到本地运行。

ASP.NET Core 8 支持的客户端渲染技术:

  • Blazor WebAssembly
  • ASP.NET Core Single Page Application (SPA) with Angular | React | Vue

SPA with Angular | React | Vue

前后端分离。

优点是:

  • 浏览器提供 JS 的运行环境。
  • 良好的社区和生态系统

缺点是:

  • 要学习更多语言和框架
相关推荐
IT_陈寒1 小时前
Redis内存暴涨,没想到是AOF重写捣的鬼
前端·人工智能·后端
ikoala1 小时前
让 Codex 自己查账:一个省 token 的小技巧
前端·后端·ai编程
wo_jack5 小时前
C++ 入门笔记(十六):第16课 vector 模拟实现十问十答 —— 从三指针到迭代器失效
c++·后端·面试·stl·vector
量化分析码农6 小时前
【Python量化波动率实战 02】波动率会传染:EWMA 指数加权给近期行情更大话语权
后端
GISer_Jing7 小时前
如何学习Agent
后端·langchain
JWASX8 小时前
【Go】map 源码解析 - group
后端·golang·map·源码分析
量化分析码农9 小时前
【Python量化波动率实战 01】波动率是怎么算的:年化、滚动与区间估计一次讲清
后端
特立独行的猫A9 小时前
AI 时代,我为什么推荐用 cj-tauri 开发桌面应用
java·后端·python
金銀銅鐵9 小时前
从一个类名到一张类图:用反射自动生成 PlantUML
java·后端·uml
追逐时光者10 小时前
一款基于 .NET 开源、免费的数据库自治诊断平台
后端·.net