2011-05-26 53 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