2016-01-27 64 views
1

我在Visual Studio 2013中安裝了Resharper 10.我的解決方案包含一個使用Razor顯示日期的視圖.cshtml文件。然而,ReSharper的顯示一個紅色警告亮點的日期時間,並提示我導入System.DateTime的命名空間 - 請鏈接圖像:爲什麼Resharper顯示紅色的「無法解析符號」錯誤?

enter image description here

奇怪的是,當我的同事開解他們的機器 - 完全相同的代碼,使用相同版本的VS2013和相同的Resharper版本 - 沒有Resharper錯誤。

在瀏覽文件夾中的Web.config文件的命名空間部分看起來是這樣的:

<namespaces> 
    <add namespace="System.Web.Mvc" /> 
    <add namespace="System.Web.Mvc.Ajax" /> 
    <add namespace="System.Web.Mvc.Html" /> 
    <add namespace="System.Web.Routing" /> 
</namespaces> 

如果我添加系統命名空間,即:

<add namespace="System" /> 

..然後這個問題變遠。但是 - 這並不能解釋爲什麼這個問題只出現在一臺機器上,而不出現在其他機器上。

我試圖清理解決方案,暫停&恢復ReSharper的,清除緩存ReSharper的,刪除項目的文件名爲.suo等

這看起來很簡單,但我實在想不通爲什麼[R當代碼和環境看起來相同時,#會在一臺機器上發出警告,但不會在其他機器上發出警告。

該解決方案構建併成功運行,沒有任何警告。如果我禁用Resharper,錯誤消失。

有什麼建議嗎? Resharper的警告是我的機器上更廣泛的配置問題的結果嗎?

+0

項目在該機器上運行正常嗎? – derigel

+0

因此,除非我錯了,否則您的機器是正確的 - 需要導入來引用DateTime。也許你的同事剛剛禁用了r#的剃刀文件,或者只是抑制了那個特定的錯誤? –

+0

..可能 - 但是,當我禁用Resharper時,Visual Studio的intellisense表明它完全滿意於@DateTime類的名稱 - 也就是說,VS本身沒有錯誤指示。我將我機器上的Resharper設置與我的同事們的機器進行了比較 - 它們都一樣。 –

回答

0

我有類似問題清理我的電腦。所以在我的情況下,我卸載了一箇舊的視覺工作室和一些依賴項(它們明顯標記爲VS 2010),但是這也最終刪除了舊的.net庫中的東西。所以ReSharper抱怨說 - 它總是可以通過專門引用特定的庫來解決。

我的建議

  1. 檢查什麼的.NET版本的VS項目預計
  2. 檢查您在GAC這個版本(或者如果沒有,比較你的同事的設置)
  3. 如果您沒有版本,請將項目升級到更新的.net,或重新安裝較舊的.net庫,或更改您的配置文件以映射版本,從而允許新版本進入舊的。
相關問題