什么是Blazor
MSDN1中的定义十分贴切, 此处照搬过来:
Blazor 是一个使用 .NET 生成交互式客户端 Web UI 的框架:
使用 C# 代替 JavaScript 来创建信息丰富的交互式 UI。
共享使用 .NET 编写的服务器端和客户端应用逻辑。
将 UI 呈现为 HTML 和 CSS,以支持众多浏览器,其中包括移动浏览器。
与新式托管平台(如 Docker)集成。
不严谨地说, Blazor就是用C#部分代替JavaScript来写前端.
Blazor的优势
简洁. 页面布局清晰, 不过分追求华丽效果
统一. 页面风格统一
开发效率高. 基于组件, 十分方便代码复用, 同时可以利用现有的.NET库, 利于快速实现原型
高性能. 具有.NET血统的Blazor自然也带着高性能的优点
Blazor的劣势
官方文档不完善. 虽然MSDN一向以高质量著称, 但作为发布仅两年的框架, 文档并不算完善, 实际开发中遇到的很多问题在官方文档中没有解决方案.
生态资源少. 目前的互联网生态是基于JS的, Blazor的生态资源并不多.
调试相对麻烦. 对代码做出改动后需要重新编译, 重新启动调试.
无法总结操作DOM. DOM操作仍然依赖JavaScript, 调用JavaScript的过程相对复杂