.NET in Browser - Blazor

什么是Blazor

Blazor 是一个实验性的. NET web 框架, 使用 C# 和 HTML 在任何浏览器中不需要插件即可运行 WebAssembly 程序集。

什么是WebAssembly

WebAssembly是一种新的适合于编译到Web的,可移植的,大小和加载时间高效的格式,是一种新的字节码格式。它的缩写是”.wasm”,.wasm 为文件名后缀,是一种新的底层安全的“二进制”语法。它被定义为“精简、加载时间短的格式和执行模型”,并且被设计为Web 多编程语言目标文件格式。
这意味着浏览器端的性能会得到极大提升,它也使得我们能够实现一个底层构建模块的集合.
介绍1 介绍2

为什么要用.NET开发Web项目

  • 稳定,成熟,高效 : .net standard, msbuild

  • 快速,可扩展性,可靠 : .net core用于后端服务

  • 现代语言 : C#

  • 一流的开发工具: Visual studio

客户端web开发一直是JavaScript的唯一领域。WebAssembly准备通过向语言、框架和工具的完整生态系统开放web来改变这一点。Blazor是一个通过WebAssembly网络平台将.net引入网络的实验性项目。使用.net进行全栈Web开发,并且不需要插件或代码转换,可适用于所有现代浏览器,包括移动浏览器。可以理解为,这是一个C#语言的Vue, Angular, React。

Browser + Razor = Blazor

Blazor有哪些功能

  • 组件化开发

  • 支持路由

  • 布局

  • 依赖注入

  • javascript互操作

  • 自动构建

  • 调试

  • 发布

  • 应用程序大小优化

  • 在不支持WebAssembly的浏览器中回溯到asm.js

  • 丰富的智能感知和工具

Blazor的两种工作方式 了解服务器端Blazor框架

1 客户端模式
将cs和cshtml编译打包成静态文件,可直接部署到web服务器,发布文件如下:
640?wx_fmt=png

2 服务端工作模式
服务端工作模式是要依赖dotnet,dotnet作为后端服务,通过SignalR与浏览器通讯
640?wx_fmt=png

Blazor将要实现的功能

  • 优化运行时性能

  • AOT编译到WebAssembly

  • 优化下载大小

  • 改进对.net standard的支持

  • 实时重装(SignalR断开后需要刷新页面)

  • 延迟加载应用程序区域

  • 服务端渲染

  • 安全

  • 表单和验证

  • 测试框架

  • 跨平台工具(Blazor+Electron)

  • 服务器端状态和连接管理

Blazor干货

Blazor 目前版本是0.6,目前更新比较频繁,但是已经可以用来开发后端应用了。这里有一套Blazor框架,可以实现Blazor服务端工作方式和客户端工作方式的切换,不需要修改任何代码, 前端用Razor实现SEO,后端用Blazor,当Blazor是以Server-Side工作时,直接后端依赖注入,当Blazor以Client-Side工作时,Host将Service 转换成 Controller 提供API, 前端通过HttpClient调用(防止业务dll泄漏,这个也是Blazor将要解决的安全问题)

原文地址https://www.cnblogs.com/kingreatwill/p/9865945.html

.NET社区新闻,深度好文,欢迎访问公众号文章汇总 http://www.csharpkit.com

640?wx_fmt=jpeg

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/319249.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【数论】【杜教筛】选数(P3172)

正题 P3172 题目大意 在 [L,R] 选n个数,问gcdk的方案数 解题思路 因为gcdk,那么所选的数都是k的倍数,那么可以让L,R整除k,那么有 ∑a1LR∑a2LR...∑anLR[gcd(a1,a2...an)1]\sum_{a_1L}^R\sum_{a_2L}^R...\sum_{a_nL}^R[gcd(a_1…

【模板】吉老师线段树

ACM模板 目录区间取最值区间取最值 Gorgeous Sequence 区间最值操作往往采用以下办法 线段树维护: 区间最大值mx\text{mx}mx区间严格次大值smx\text {smx}smx区间和sum\text{sum}sum区间最大值个数cnt\text{cnt}cnt区间最值懒标记lazy\text{lazy}lazy 实现区间…

2020牛客国庆集训派对day4 Digits Are Not Just Characters

Digits Are Not Just Characters 题意: 比较大小,如果比目标字符串大输出“”,相等也输出“”,小则输出“-”: 比较规则: 字母大于数字 两个字母比较按照ASCII码 当被解释为十进制数时,两个数…

CF453C-Little Pony and Summer Sun Celebration【构造】

正题 题目链接:https://www.luogu.com.cn/problem/CF453C 题目大意 nnn个点mmm条边的一张无向图,每个节点有一个wiw_iwi​表示该点需要经过奇数/偶数次。 求一条满足条件的长度不超过4n4n4n的路径 1≤n,m≤1051\leq n,m\leq 10^51≤n,m≤105 解题思路 一个结论就…

在碰撞中成长 - 北京银行的DevOps实践之路

2018年10/27日,在上海召开的微软年度最大规模的技术盛会—微软2018技术暨生态大会上,北京银行渠道系统负责人&敏捷团队负责人周兵女士和大家一起分享了北京银行的DevOps 实践转型经验,得到了大会听众的热烈评价和共鸣,会后众多…

【笛卡尔树】【线段树】meetings 会议(P5044)

正题 P5044 题目大意 给出一个序列a,设 dist(x,y)max⁡ixyaidist(x,y)\max_{ix}^ya_idist(x,y)maxixy​ai​,有m个询问,对于每个询问,给出 l,r,让你找一个点x(l≤x≤r)(l\leq x\leq r)(l≤x≤r),使得 ∑i…

codeforces438 D. The Child and Sequence

2020威海区域赛G. Caesar Cipher就用到了此思想&#xff08; 今天碰到模板题了还是再写一遍吧 D. The Child and Sequence 区间取模操作模板题 有一个公式 x%p<x2(x>p)x\%p<\frac{x}{2}(x>p)x%p<2x​(x>p) 由此对于每一个数最多模log次&#xff0c;如果我们…

2020牛客国庆集训派对day4 Emergency Evacuation

Emergency Evacuation 题意&#xff1a; 有n个人在不同的位置上&#xff0c;在最后面有一个出口exit&#xff0c;所有人都要逃离出去&#xff08;走出出口&#xff09;&#xff0c;且每个格子最多容纳一个人&#xff0c;当有人挡在前面时&#xff0c;后面的人必须停留&#x…

P3170-[CQOI2015]标识设计【插头dp】

正题 题目链接:https://www.luogu.com.cn/problem/P3170 题目大意 给出n∗mn*mn∗m的网格上有一些障碍&#xff0c;要求用三个LLL形&#xff08;高宽随意&#xff0c;不能退化成线段/点&#xff09;覆盖格子且LLL形之间不能重叠。 求覆盖方案&#xff08;每个LLL形相同&…

【活动(广州)】MonkeyFest2018 微软最有价值专家讲座

MonkeyFest2018微软最有价值专家讲座Monkey Fest 是一个一年一度由全球Microsoft Xamarin跨平台开发者发起的全球性社区活动&#xff0c;主要是推广在云、人工智能、大数据、移动开发等技术。本次活动同时在新加坡&#xff0c;美国&#xff0c;日本&#xff0c;加拿大&#xff…

【数学】Natasha, Sasha and the Prefix Sums(CF1204E)

正题 luogu CF1204E 题目大意 给出序列a&#xff0c;由n个1和m个-1组成&#xff0c;设 f 为最大前缀和和0的最大值&#xff0c;问全排列的 f 之和 解题思路 可以问题转换到平面图上&#xff0c;把1看作往上走&#xff0c;-1看作往下走 那么问题就变成了求 (0,0) 到 (nm,n-m…

codeforces1454 F. Array Partition

这周忙死&#xff0c;一直没机会吧补一下题&#xff0c;周二晚上打的div3&#xff0c;过了A~E&#xff0c;F就看了下题目就没时间了&#xff0c;无聊的时候想应该会用到ST表&#xff0c;然后想要维护指针&#xff0c;后来写的时候发现维护不了&#xff0c;然后就歇菜了。。。 …

2020牛客国庆集训派对day4 Arithmetic Progressions

Arithmetic Progressions 链接&#xff1a;https://ac.nowcoder.com/acm/contest/7831/B 来源&#xff1a;牛客网 题目描述 An arithmetic progression is a sequence of numbers a1, a2, ..., ak where the difference of consecutive members ai1−ai is a constant (1 ≤ …

P4457-[BJOI2018]治疗之雨【期望dp,高斯消元】

正题 题目链接:https://www.luogu.com.cn/problem/P4457 题目大意 开始一个人最大生命值为nnn&#xff0c;剩余hphphp点生命&#xff0c;然后每个时刻如果生命值没有满那么有1m1\frac{1}{m1}m11​的概率回复一点生命&#xff0c;然后敌人攻击kkk次&#xff0c;每次有1m1\frac…

互联网公司为什么普遍996而不是666

根据skinshoe wu的遭遇&#xff0c;解释一下互联网行业的12小时工作制以及996。题目说的有点绝对&#xff0c;这里先澄清一下&#xff1a;有的公司是10106&#xff0c;9106&#xff0c;10126&#xff0c;995&#xff0c;甚至955&#xff0c;007的都有&#xff0c;我只说大多数&…

【DP】【四边形不等式】邮局(P4767)

正题 P4767 题目大意 给出坐标轴上的n个点&#xff0c;让你选择m个点作为特殊点&#xff0c;使所有点到最近特殊点的距离之和最小 解题思路 考虑对于一个区间选择一个特殊点的最小代价&#xff0c;可以把所有点到当前点的路径分割开来&#xff0c;即每段距离走的次数为1,2,3…

IdentityServer4之JWT签名(RSA加密证书)及验签

一、前言在IdentityServer4中有两种令牌&#xff0c;一个是JWT和Reference Token&#xff0c;在IDS4中默认用的是JWT&#xff0c;那么这两者有什么区别呢&#xff1f;二、JWT与Reference Token的区别1、JWT(不可撤回)  JWT是一个非常轻巧的规范&#xff0c;一般被用来在身份提…

2020牛客国庆集训派对day4 What Goes Up Must Come Down

What Goes Up Must Come Down 题意&#xff1a; 我们规定一个序列合理&#xff1a;当一个序列左部分是非降序列&#xff0c;右部分是非升序列&#xff08;左右部分可为0&#xff0c;也就是整体可以为非降序列&#xff0c;非升序列&#xff09; 题解&#xff1a; 树状数组来…

codeforces1451 E. Bitwise Queries(位运算妙用)

E1. Bitwise Queries (Easy Version) ab(a&b)(a∣b)ab(a\&b)(a|b)ab(a&b)(a∣b) 根据上述式子用333次$&和333次∣|∣操作求出a1a2,a2a3,a1a3a_1a_2,a_2a_3,a_1a_3a1​a2​,a2​a3​,a1​a3​由此得出a1,a2,a3a_1,a_2,a_3a1​,a2​,a3​ 根据a1⊕aixa_1\oplus a…

P4240-毒瘤之神的考验【莫比乌斯反演,平衡规划】

正题 题目链接:https://www.luogu.com.cn/problem/P4240 题目大意 QQQ组数据给出n,mn,mn,m求 ∑i1n∑j1mφ(ij)\sum_{i1}^n\sum_{j1}^m\varphi(i\times j)i1∑n​j1∑m​φ(ij) 1≤Q≤104,1≤n,m≤1051\leq Q\leq 10^4,1\leq n,m\leq 10^51≤Q≤104,1≤n,m≤105 解题思路 首先…