2011-05-26 127 views
14

我有一台全新安装的Windows 7 64位专业版的计算机上安装了Visual Studio 2010/SP1/MVC 3(与四月工具更新)。Razor智能感知不工作VS2010 SP1Rel MVC3从WPI Win7 x64

我没有安装resharper。 我从来没有在这个新的操作系统安装上安装任何RC或测试版。

我的安装步骤如下:

  1. 安装Visual Studio专业版。
  2. 安装Web平台安装程序。
  3. 从WPI安装Visual Studio SP1。
  4. 安装Microsoft ASP.net MVC 3(4月份工具更新)
  5. 安装生产力电动工具

帮助>关于Microsoft Visual Studio中显示:

微软的Visual Studio 2010 版本10.0。 40219.1 SP1Rel

Microsoft .NET Framework 版本4.0.30319 SP1Rel

System.Web.Mvc.dll程序文件版本显示:3.0.20105.0

安装完毕后,我做了以下内容:

  1. 打开Visual Studio。
  2. 文件>新建项目
  3. 选择“ASP.Net MVC 3 Web应用程序”。
  4. 在“新建ASP.NET MVC 3项目”对话框中。我选择了“互联网应用”,“剃刀”视图引擎。点击确定。

在这里的项目的行为:

  1. 打开任何文件CSHTML和剃刀@blocks并不突出。
  2. 智能感知提供了html片段作为剃刀块内外的选项,但不识别内部的Html助手或模型等。
  3. 该项目建立。
  4. 您可以运行该项目,并在构建时运行。剃刀视图正常渲染。

有没有人知道一套确定的先决条件让Razor Intellisense能够工作?我可以在其他具有Razor Intellisense工作的Win7 64位机器和2有这个问题的机器之间进行区分?注册表项?有没有可以帮助调试的Visual Studio日志?经过几个小时的沮丧和阅读每一个Razor Intellisense的帖子和我遇到的问题,而没有提出任何有效的工作,我只是希望有什么新的想法来排除故障/接下来尝试。

感谢您的任何帮助。

+1

尝试右键单击cshtml并选择“Open With ...”,并确保它设置为“Razor Editor” – Buildstarted 2011-05-26 14:43:08

回答

1

你可能已经尝试过的那一个,但对我来说,在这个博客发布该步骤的工作:http://blogs.msdn.com/b/webdevtools/archive/2011/03/24/razor-tooling-for-mvc3-rc-with-visual-studio-2010-sp1-rtm.aspx

+0

Ya在我的情况下,它是Win7 Ultimate 64位的全新安装。 VS 2010 RTM,然后是WebPlatformInstaller VS 2010 SP1。我甚至重新格式化并再次尝试。 VS团队正在努力。他们无法使用Win7 Pro 64位进行复制。这就是我最终做的是重新格式化并使用Win7 Pro 64位。 – j0tt 2011-06-16 04:05:09

14

我知道它已经从过去后一段时间,但我通过卸载MVC 2和MVC2固定矿VS工具,并只安装MVC 3。

+3

我安装了MVC2,MVC3和MVC4 Beta,并且自动完成功能无法与强类型的剃刀视图一起使用。在卸载MVC2,MVC2 VS Tools,MVC4和MVC4 VS Tools之后,只安装了MVC3,它再次运行。投了票。谢谢。 – 2012-03-06 17:38:07

1

我们遇到了一些问题,因为在构建Razor视图时,编译器使用32位MSBuild,即使您将所有项目设置为64位或Any Cpu,也会遇到问题。当我们将它强制为64位时,我们的Web项目无法编译,因为剃须刀视图是以32位构建的,并且因为某些视图引用了引用了第三方64位dll的项目而失败。

+0

看来我有这个问题。你做了什么来纠正它? – 2012-05-30 14:51:32

0

我有同样的问题,我只是通过安装Visual Studio 2010 SP1来修复它。从那时起,一切正常。我希望这可以帮助你。

你可以从这里下载: http://www.microsoft.com/download/en/details.aspx?id=23691

好运

+2

他不是说他有VS 2010 SP1吗?\ – Dan 2012-01-06 20:02:34

+0

是的。我已经在SP1上。 – j0tt 2012-02-24 13:53:51

2

我通过在CSHTML文件并选择“查看标记”右击固定它。

1

我遇到了这个问题,我的项目之一,问题是项目莫名其妙地转换为类库项目,当我从一个独立的MVC应用程序转换成一个果园模块。

在文本编辑器中打开的.csproj文件,并替换该行修正:

<ProjectTypeGuids>{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids> 

与此:

<ProjectTypeGuids>{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids> 
+0

我将不得不在全新安装的Win 7 Ultimate 64bit上尝试此操作。我的解决方案是安装Windows 7 Professional 64bit。在Win7 Pro上执行相同的过程后,所有工作都完成了,因此我将其留在了那里。我使用3台机器完成了这些工作,完全遵循了相同的步骤。对我来说,这绝对是一个Win 7 Ultimate 64位特定问题。 – j0tt 2012-02-14 23:06:21

0

像BuildStarter mentionned,单击打开并设置默认剃刀编辑器,即使它已经设置。应该得到颜色编码和intelisense。

+0

在我的情况下,这不是答案。编辑与cshtml相关联,它只是无法正常工作。 – j0tt 2012-02-24 13:51:25

0

我遇到了同样的问题。当我将Views web.config中的视图引擎更改为自定义引擎时,它开始随机发生。这是一个已知的问题VS2010 Intellisense在自定义视图引擎到位或视图继承自定义视图页面时识别保留字时遇到问题。

碰到Razor Intellisense问题的每个人都应该检查一下。上述修复(重新安装VS,重新安装SP1,重新应用MVC3工具更新)都没有帮助。

13

如果你有MVC4和MVC3安装你需要这个在web.config中添加的AppSettings(root,并在浏览文件夹)使用MVC3

<appsettings> 
    <add key="webpages:Version" value="1.0.0.0"> 
    ... 
</appsettings> 

还要检查在根web.config您参考,他们应该包括这些版本

<add assembly="System.Web.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
<add assembly="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
<add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
<add assembly="System.Web.WebPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 

重新打开您的解决方案以使设置生效

+5

这是为我工作。我卸载了MVC2和MVC2工具,但它仍然无法工作,于是我添加了< config项目,关闭并重新打开了解决方案,似乎修理它。我现在有MVC3和MVC3工具,再加上MVC4和MVC4工具,它工作正常。 – MajorRefactoring 2012-06-28 16:03:46

+0

对我来说,安装MVC2和MVC4就足够了,只需对web.config文件进行更改即可。我也关闭并重新打开了解决方案。 – Zane 2012-07-24 13:13:28

+0

这适用于我,但我只需要更改appSettings值。我的问题是升级MVC,但该项目仍然有1.0.0.0,我需要2.0.0.0。繁荣。 – 2012-09-20 18:21:29

6

我只是浪费2小时我的生活这一点。发生在我身上的是web.config文件被错误检查并且不再是Unicode UTF8。当VS 2010打开解决方案时,它会检查网页。对于AppSettings的配置文件:

<add key="webpages:Version" value="2.0.0.0" /> 
<add key="webpages:Enabled" value="true" /> 

由于文件无法通过正常手段来读,它只是跳过它完全,造成VS认为你需要重新安装MVC ......我只是想在发布此遇到其他人遇到同样的问题,以便于解决。

+0

+1 2.0.0.0为我工作。是1.0.0.0 – 2012-12-26 11:04:16

+0

啊,这很有趣。我不希望那个版本也会导致问题! :) – 2013-01-02 17:12:13

+0

[ServiceStack Razor](http://www.ienablemuch.com/2012/12/self-hosting-servicestack-serving.html)上的intellisense在我将其设置为2.0.0.0时起作用。谢谢:-)我也渴望看到servicestack剃刀模型上的intellisense,其中ServiceStack Razor [作者](http:// stackoverflow。com/users/85785/mythz)正计划解决[将来](http://stackoverflow.com/questions/14043364/servicestack-razor-inherits-directive-has-no-intellisense/14050179#14050179) – 2013-01-03 05:56:11

3

剃刀编辑

检查剃刀智能感知工作,如果它被选定为默认的编辑器,对于这个做

  • 右键单击视图文件(.cshtml)
  • 选择打开方式。 ..
  • 检查剃刀编辑器选择默认
  • 如果没有,从控制面板卸载mvc3重新安装它。

再次检查文件必须在Razor Editor中打开。我已经完成了这项工作,现在正在工作。

1

请注意,对于我来说,导致问题的原因是安装了Roslyn语言服务插件。当我卸载插件时,问题解决了。要卸载插件,只需转到tools-> extension manager并找到插件Roslyn Language Services。点击卸载按钮并重新启动VS2010。

+0

这也适用于更高版本的Visual Studio – 2014-04-21 02:12:01