前言
喜大普奔, Blazor 0.5.0 在我刷了好几遍 Github (表示功不可没)以后,终于在 2018年7月25日发布了!
[Blazor 0.5.0 Announce] (https://blogs.msdn.microsoft.com/webdev/2018/07/25/blazor-0-5-0-experimental-release-now-available/
)
此版本提供的新特性:
服务端 Blazor
启动模式修改为 ASP.NET Core 方式
Javascript 互操作提升
免除 Javascript 方法预注册需求
Javascript 中调用 .NET 方法
通过引用方式传递 .NET 对象到 Javascript
提供在任何 HTML 文件中使用 Blazor 的标签方法。
渲染原始 HTML
新的组件参数代码段
支持浏览器调试
Visual Studio 模板更新
要为 Visual Studio 安装 Blazor Language Service extension 的开发人员 CI 版本,请点击菜单 工具 - >选项 - >环境,将https://dotnet.myget.org/F/blazor-dev/vsix/ 添加为附加扩展库 - >扩展和更新。如下图所示:
再点击 工具 -> 扩展和更新,在左侧 更新 里面可以看到有更新的模板。点击对应的模板更新即可。
以上说明用于你的VS已经安装有旧版本模板的更新。如果你是第一次安装,请参考 Blazor 简单介绍 - C# 全栈工程师的福音 说明操作即可。
VS Code CLI 更新
CLI 的更新就比较容易了,一个命令行的事。
dotnet new -i Microsoft.AspNetCore.Blazor.Templates
新版本体验
在6月12日 ASP.NET Community Standup - Meet the Blazor team! (油管视频,不能科学上网我也帮不了你),我就对 Server-side Blazor 很感兴趣,这次出来新版本,上手第一件事就是试验这个特性。
模板新建的项目,Chrome Network 对比结果如下:
Client side Blazor:
19 Request | 3.1 MB transferred | Finish: 4.26 s | DOMContentLoaded:479ms | Load: 720 ms
访问我放在Github 的 Blazor SPA 网站
也欢迎你告诉我你的测试结果。
Server side Blazor:
10 Request | 97.5 KB transferred | Finish: 506 ms | DOMContenLoaded:384 ms | Load: 589 ms
本机测试结果。
在实际开发过程中,Client side Blazor 有时候加载时间达到 8-15 秒或更多, Loading 的过程是非常明显的。这个加载慢是目前大部分 SPA 框架的普遍问题。 有人说,只要不关闭浏览器,加载毕竟只有开始的那一次痛,忍一忍也就过去了。
除了加载速度外,Server side blazor 的另外一个优点是不需要通过 AJAX 访问API数据,由于所有过程都是在服务端进行的,可以通过 ADO.NET 或 Entity Framework 等ORM直接进行数据访问。
选择客户端Blazor 或者是服务端 Blazor,需要根据不同项目需求具体分析。
原文地址:https://www.jianshu.com/p/22f3522db7d8
.NET社区新闻,深度好文,欢迎访问公众号文章汇总 http://www.csharpkit.com