博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Blazor将.NET带回到浏览器
阅读量:6225 次
发布时间:2019-06-21

本文共 795 字,大约阅读时间需要 2 分钟。

由Steve Sanderson开发的尝试使用和DotNetAnywhere将.NET带回到浏览器。它不是要成为一个像Flash或Silverlight那样的完整生产框架,而是要探索一下有什么可能性。

\\

WebAssembly将自己描述成一个“内存安全的沙箱执行环境”标准,它“甚至可以在已有的JavaScript虚拟机中实现”。虽然WebAssembly在提供原生支持的浏览器中性能更好,但较旧的浏览器可以使用转换器和解释WebAssembly。

\\

目前,按照设计,WebAssembly主要为C和C++应用程序提供支持。它充当clang/LLVM的编译器后台。为了从C转到C#,Blazor使用了另外一个研究项目。由Chris Bacon开发的是一个基于C面向.NET公共中间语言(即IL、CIL、MSIL)的解释器。DotNetAnywhere项目大约是6年前完成的。

\\

Blazor对DotNetAnywhere做了如下修改:

\\
  • 支持使用Emscripten构建;\\t
  • 支持通过p/invoke在.NET中调用JavaScript;\\t
  • 增加其他的互操作原语,如GCHandle;\\t
  • 接收从JavaScript到.NET的入站调用;\\t
  • 修复了一些Bug;\\t
  • 支持加载.NET Core风格的程序集。\

Blazor应用程序使用Razor模板构建,在浏览器中执行,而不是服务器。据Razor文档介绍,一个简单的“hello world”应用程序需要300KB的下载。这包括“所有的东西:一个小型的.NET运行时、核心库、应用程序代码,以及引导和与WebAssembly代码互操作所需的封装库”。

\\

现在尚未剔除没有被实际调用的代码,因此,这个下载量还可以进一步减少。

\\

想要实际地看一下效果的话,请观看NDC大会视频“”。

\\

查看英文原文

转载地址:http://tgyna.baihongyu.com/

你可能感兴趣的文章
用DirectX实现粒子系统(二)
查看>>
六个人如何运维一万台服务器?
查看>>
nandflash学习1——导致nandflash反转的原因【转】
查看>>
Windows Phone 7发布啦
查看>>
租房新体验:AI机器人中介带你看房
查看>>
git版本控制&&github的使用
查看>>
权限设计之一
查看>>
如何使用网络库实现应用级消息收发
查看>>
Linux中断(interrupt)子系统之二:arch相关的硬件封装层【转】
查看>>
Django - 模板
查看>>
Java刷题知识点之什么是死锁、死锁产生的4个必要条件、死锁的解除与预防
查看>>
ArcGIS Engine对象库
查看>>
图片在保存的时候===》出现这个异常:GDI+ 中发生一般性错误
查看>>
Hadoop MapReduce编程 API入门系列之wordcount版本2(六)
查看>>
分布式监控系统Zabbix-3.0.3-完整安装记录(2)-添加mysql监控
查看>>
运行灵活网页布局的示例程序
查看>>
Android -- Service绑定解绑和aidl
查看>>
它们的定义AlertDialog(二)
查看>>
SQL Server-聚焦计算列或计算列持久化查询性能(二十二)
查看>>
ten sentences(31-40)
查看>>