2011-03-02 65 views
15

我正在使用Visual Studio 2010/ASP.net MVC 3与Razor View Engine。我使用Internet应用程序模板创建了一个新项目。我需要做什么才能让Intellisense工作?ASP.net MVC 3 Razor - jQuery Intellisense

+0

现在不行吗?也许尝试重新安装ASP.NET MVC 3. – 2011-03-02 22:56:02

+0

它不是。我刚刚安装它几天前。 :( – Dismissile 2011-03-02 22:58:15

+0

也许在Microsoft Connect网站上发现了一个错误,我发现很多人都在抱怨这个,据说我从来没有遇到过这样的问题:-)并不是说我对Intellisense非常在意,但它可以方便地使用倍。 – 2011-03-02 22:59:10

回答

31

如果这是jQuery的具体作为标题指定,试图在Views/Shared/_layout.cshtml(或.vbhtml)文件中添加一行到标签:

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

这将引用智能感知文件的VisualStudio,但仍不能引用它运行。

记住,指向vsdoc文件比较你把这个代码的文件。像~/Url.Content()或任何其他运行时代码的代码都将是不可见的VS的智能感知。
这正是为什么if (false)从运行时隐藏脚本引用(if块未执行),但并未将其从VS intellisense中隐藏(并提供另一个使用Url.Content()左右的.min.js文件)。

+0

这并没有工作,要么很遗憾。可能需要重新安装VS2010或其他东西。 – Dismissile 2011-03-03 02:43:17

+0

您是否安装了Resharper?如果是这样,哪个版本?在Visual Studio中将R#设置中的intellisene选项更改会改变什么? – Meligy 2011-03-03 02:46:04

+0

适用于我:) – dariol 2011-06-29 22:49:46

4

我发现它在为我工作很好的解释: http://theycallmemrjames.blogspot.com/2011/03/jquery-intellisense-with-aspnet-mvc-and.html

这些行:

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

应该被添加到每个视图(在需要智能感知)。这将启用智能感知,但不会在运行时添加第二个参考。

+5

我发现在脚本引用中使用Url.Content(“〜/ Scripts/jquery-1.4.4.min.js”)时,intellisense不起作用。显然它不能确定路径,直到你跑。 YOu似乎也需要在您想要智能感知的每一个页面中执行此操作,而不仅仅是将其添加到布局/主控。 – Dismissile 2011-03-23 22:25:50

+6

哇,所以基本上intellisense是完全无用的,除非你混乱每个视图无用的,如果块为每个JavaScript参考你想intellisense。现在对Visual Studio真的很失望。 – 2011-11-17 15:31:22

+0

@John Bubriski在下面看到我的答案。 – MemeDeveloper 2013-03-22 02:39:21

9

http://blog.meidianto.com/2010/05/13/vs2010-tips-7-how-to-make-jquery-intellisense-work-for-external-javascript-file/

将jQuery的文件放在js文件要智能感知上是这样的: ​​

然后,它会像这样: enter image description here

+1

问题是关于Razor文件(.cshtml,.vbthml)而不是JavaScript文件。当需要从另一个JavaScript文件(.js)中的一个JavaScript文件自动完成时,''语法可用。 – Meligy 2013-07-20 09:57:26

+0

我也面临同样的问题,尝试拖放引用。现在它正在工作,但通过这种方式,我必须在所有视图中拖放jquery * .js文件。 有没有办法让我在布局视图中引用,它会自动进入所有视图 – 2014-01-03 10:30:03

2

好像我在Vs2012与一个_layout.cshtml,来自@Mohamed Meligy的解决方案在使用该布局文件的视图中不起作用。也许我错过了什么?

但是 - 在被推荐solution here似乎做法似乎工作请客,现在我有我要在_references.js添加引用,不需要运行时错误的伎俩位的所有文件的所有引用的IntelliSense ,并且可以保持参考文献的完整清晰。