18

Visual Studio 提供 JavaScript 智能感知。看到您在母版页中引用 JavaScript 文件(例如 jQuery 文件),然后在应用程序的任何视图中提供语句完成,这已经足够聪明了。但是,这似乎不适用于 Razor。有没有办法让它与 Razor 一起工作?ASPX 视图引擎提供了这个技巧,例如:<% /* %><script src="~/Scripts/jquery-1.4.1-vsdoc.js"></script><% */ %>

4

2 回答 2

28

你应该能够做这样的事情:

@if (false) {
<script src="/Scripts/jquery-1.4.1-vsdoc.js" type="text/javascript"></script>
}

这样,当应用程序运行时代码将永远不会运行,但 VS 不会知道if (false),因此它将解析<script>标签并允许 Intellisense 将其考虑在内。在 Razor 文件中使用 Razor 注释的问题是 VS 会识别它们并完全忽略其中的任何内容。例如,这不起作用:

@* <script src="/Scripts/jquery-1.4.1-vsdoc.js" type="text/javascript"></script> *@
于 2010-11-13T03:57:36.177 回答
9

为了防止编译器对无法访问的代码发出警告,您可以进一步用 pragma 包装它:

@{ #pragma warning disable }
@if (false) 
{ 
    <script src="/Scripts/jquery-1.4.1-vsdoc.js" type="text/javascript"></script> 
} 
@{ #pragma warning restore } 
于 2011-11-16T03:35:32.973 回答