有没有办法为cshtml razor编辑器添加设计器视图?

有没有办法为cshtml razor编辑器添加设计器视图?,razor,custom-controls,visual-studio-extensions,Razor,Custom Controls,Visual Studio Extensions,我正在使用我们开发的内部工具来解析带有生成模型的razor模板。 问题是,现在需要每次加载模板才能解析它。 我想添加一个edior,这样我可以在编写cshtml时预览它,所以我认为最好的方法是将它变成一个VisualStudio扩展 我研究过网络,在我看来,你可以为VS编写一个自定义编辑器,但是我必须自己编写编辑器,我不想这样做 是否有一种方法可以使用VS2012内置的现有razor编辑器,并使用我的控件添加预览选项卡,从razor编辑器获取当前文本,以便我可以解析它并显示预览 使用现有编辑器的

我正在使用我们开发的内部工具来解析带有生成模型的razor模板。 问题是,现在需要每次加载模板才能解析它。 我想添加一个edior,这样我可以在编写cshtml时预览它,所以我认为最好的方法是将它变成一个VisualStudio扩展

我研究过网络,在我看来,你可以为VS编写一个自定义编辑器,但是我必须自己编写编辑器,我不想这样做

是否有一种方法可以使用VS2012内置的现有razor编辑器,并使用我的控件添加预览选项卡,从razor编辑器获取当前文本,以便我可以解析它并显示预览


使用现有编辑器的原因是用于着色、智能感知、错误处理等。

Razor(CSHTML和VBHTML)文件的设计视图没有内置支持。部分原因是它们是代码和HTML的混合体,其解析范围从“非常困难”到“超级不可能”

话虽如此,VS2012中有一个超级酷的特性,称为页面检查器,它可以向您显示真实呈现的页面以及生成该页面的代码(例如,您的Razor视图)以及它们之间的映射,即使某些内容来自布局页面或部分视图

查看并查找“页面检查器”部分,该部分包含指向几个博客文章和视频的链接,这些文章和视频深入描述了该功能

这里有一段摘录:

Page Inspector是一种直接在Visual Studio IDE中呈现网页(HTML、web表单、ASP.NET MVC或网页)的工具。您可以使用页面检查器检查源代码和结果输出。对于ASP.NET页面,可以使用页面检查器确定哪个服务器端代码生成了呈现到浏览器的HTML标记。即使启用了默认的ASP.NET绑定和缩小功能,页面检查器也可以工作


如果在设计时解析是“超级不可能的”,那么为什么在运行时解析如此容易呢?为什么不能用静态占位符值替换代码段?@Dan Razor解析器只解析很少的HTML或C。它主要关注的是寻找表示转换的
@
,以及HTML和C#之间的转换是隐式的一些其他地方,例如在C#块中直接有一个HTML标记(这不是有效的C#)。此外,C#和HTML都在不断发展,Razor解析器的编写使得对这两种语言的大多数更改都不会影响解析器。因此,也许真相更接近“非常困难”而不是“超级不可能”。太糟糕了,VS 2015中不存在页面检查器(