asp.net-mvc-3 - 在 <script> "text/html"模板中保持正确的 HTML 语法突出显示

标签 asp.net-mvc-3 visual-studio-2010 visual-studio razor

有没有办法在 razor View 内的 JavaScript HTML 模板中保留 HTML/ASP.net 语法突出显示和代码完成?

为了帮助突出显示(双关语)问题,请查看问题图片: enter image description here

编辑:这个问题与 Visual Studio 2010 相关。

最佳答案

为它创建一个助手,如 Syntax highlighting for script tags with html templates in Visual Studio 2010 MVC3 applications 所示.

从那里获取代码,这里是该链接的基本内容。

首先,向您的 HtmlHelperExtensions 添加一些代码:

public static class HtmlHelperExtensions
{
    public static ScriptTag BeginHtmlTemplate(this HtmlHelper helper, string id)
    {
        return new ScriptTag(helper, "text/html", id);
    }
}

public class ScriptTag : IDisposable
{
    private readonly TextWriter writer;

    private readonly TagBuilder builder;

    public ScriptTag(HtmlHelper helper, string type, string id)
    {
        this.writer = helper.ViewContext.Writer;
        this.builder = new TagBuilder("script");
        this.builder.MergeAttribute("type", type);
        this.builder.MergeAttribute("id", id);
        writer.WriteLine(this.builder.ToString(TagRenderMode.StartTag));
    }

    public void Dispose()
    {
        writer.WriteLine(this.builder.ToString(TagRenderMode.EndTag));
    }
}

现在您可以像使用 Html.BeginForm() 一样使用它了:

@using (Html.BeginHtmlTemplate("person-template"))
{
    <h3>Heading</h3>
    <p>Credits: <span></span></p>
}

瞧!通过在 Visual Studio 中隐藏相关部分来突出显示语法。

关于asp.net-mvc-3 - 在 &lt;script&gt; "text/html"模板中保持正确的 HTML 语法突出显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14449312/

相关文章:

asp.net-mvc-3 - 使用 Ninject 将参数传递给 Controller ​​构造函数

c# - MVC3项目中的表单例份验证、自动重定向

mysql - 如何在excel中创建自定义函数来抓取mysql数据?

asp.net-mvc - 在ASP.NET MVC中处理控件显示逻辑的推荐模式是什么?

c# - 创建单页应用程序的最佳做法是什么?

.net - 安装后程序集依赖关系发生变化

visual-studio - 在 Visual Studio 和 Team Foundation Server 中重命名项目文件夹

C# SQL SELECT WHERE <variable> LIKE %Column% - 格式?

初始化 DX 时出现 C++ 访问冲突

c++ - 在 Visual Studio 2010(及更高版本)中定义包含或链接路径变量的位置