微软为 Visual Studio 推出新的 Razor 编辑器

2020年07月17日

随着 Visual Studio 最新版本的发布,微软推出了一款新的 Razor 编辑器,用于使用 MVC、Razor Pages 和 Blazor 进行本地开发。该工具目前还处于实验状态。

Razor 是一种基于 HTML 和 C# 的模板语言,可以用来为 .NET Web 应用程序创建动态内容。它不是一种编程语言,而是服务器端的标记语言。

目前,Visual Studio 能够在同一 Razor 文件中可同时支持针对 HTML、CSS、JavaScript、C# 和 Razor 特定语法的 IntelliSense、补全及诊断。

为了在 Razor 文件中同时启用对所有这些语言的编辑器支持,Visual Studio 需要做一些繁琐的工作:解析 Razor 文档以确定其组成部分,然后将每个部分投影到特定语言的缓冲区中,即投影缓冲区。编辑 Razor 文档时,Visual Studio 看到的是到每个投影缓冲区的小窗口集合,以组成一个完整的文档。然后,每种语言服务都将单独处理每个缓冲区的编辑体验。

但这种方案作用有限,也不适用于远程编辑。为了给 Razor 编辑提供更广泛的支持,微软推出了新的 Razor 编辑器。它通过 语言服务器协议(LSP)实现了编辑器功能,如自动补全、转到定义等。然后,特定于 IDE 的 Razor 扩展将与 Razor 语言服务器和其他用于 HTML&C# 的语言服务器进行协调。

微软表示当前的开发重点是使新的基于 LSP 的 Razor 编辑器在功能上与现有的 Visual Studio Razor 编辑体验相同。接下来计划添加对功能还有:对 JavaScript 和 CSS IntelliSense 的支持、HTML 中的 URL 选择器支持、复杂的 C# 补全,以及从 C# 到 Razor 的定义/实现等等。

要启用新的实验性 Razor 编辑器,应先安装最新的 Visual Studio preview 版本,转到 工具>选项>环境>预览功能,然后选择启用实验性 Razor 编辑器选项:

 
展开阅读全文
5 收藏
分享
加载中
精彩评论
我最讨厌 微软 ,web开发 搞什么所见即所得,当年 donet刚推出时,奶奶的,做出一个页面,自动生成一大堆html,杂七杂八的。直接放弃,用java/jsp,后来Struts-->smvc-->restfull+vue.。struts阶段 最痛苦。我承认C#在语音特性上,是先进,有很多优势,可是你总是带有微软的裹脚布,没有sun开放。可是sun成就了别人,玩死了自己;微软是活了自己,成就不了别人。
2020-07-21 10:11
3
举报
这个意义在于,c/s端程序员可以尽量少得学习前端知识就可以进行网站开发,做为桌面端开发的我,觉得blazor真是好东西
2020-07-17 10:17
3
举报
还是写原生的html好 这样也能前后端分离
不能让后端一个程序员 把所有活路都干咯
2020-07-17 09:27
3
举报
ui还是html才是王道!
2020-07-17 10:44
2
举报
最强大的HTML模板引擎难道不是PHP么?
最强大的PHP IDE难道不是PHPStorm么?
2020-07-21 15:14
1
举报
最新评论 (15)
Razor与Blazor是两个概念,看评论好像很多人搞混淆了。
2020-07-22 11:21
0
回复
举报
各有利弊吧,razor是服务端渲染,有些场景下很有优势,连vue 也有服务端渲染模式。
2020-07-22 09:15
0
回复
举报
最强大的HTML模板引擎难道不是PHP么?
最强大的PHP IDE难道不是PHPStorm么?
2020-07-21 15:14
1
回复
举报
微软在Electron这么大驼软件上开发vscode,就是搞笑.然后又搞个什么编辑器.可惜别人不用,奈何?
2020-07-21 12:33
1
回复
举报
我最讨厌 微软 ,web开发 搞什么所见即所得,当年 donet刚推出时,奶奶的,做出一个页面,自动生成一大堆html,杂七杂八的。直接放弃,用java/jsp,后来Struts-->smvc-->restfull+vue.。struts阶段 最痛苦。我承认C#在语音特性上,是先进,有很多优势,可是你总是带有微软的裹脚布,没有sun开放。可是sun成就了别人,玩死了自己;微软是活了自己,成就不了别人。
2020-07-21 10:11
3
回复
举报
所谓的分离,不知道能不能理解成,各端用各端的语言方法去与另一端交互,保证能通即可?如果一个人做的项目还是razor方便点
2020-07-18 05:45
0
回复
举报
对于小项目razor还是很方便的
2020-07-17 14:48
0
回复
举报
ui还是html才是王道!
2020-07-17 10:44
2
回复
举报
与其搞自己的还不如搞个好用的项目,直接可用的!而不是造轮子!浏览器就是很好的例子!直接用上并超越即可!非要自己造干嘛!又要增加学习成本!不划算!
2020-07-17 10:43
0
回复
举报
同意的,分离方式才是王道!
2020-07-17 10:40
0
回复
举报
更多评论
15 评论
5 收藏
分享
返回顶部
顶部