我一直在使用我绝对喜欢使用的jQuery模板。 IDE的唯一缺点是脚本标签中缺少HTML IntelliSense。有没有办法愚弄VS2010,使模板脚本标签内的标记可以获得IntelliSense和语法高亮?
解决方法
我为ASP.NET MVC 3创建了一个帮助程序,它的工作原理如下,灵感来自于Html.BeginForm:
在视图内:
@using (Html.BeginHtmlTemplate("templateId")) { <div>enter template here</div> }
助手的代码:
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)); } }