2016-03-01 39 views
4

我試圖在Visual Studio中創建一個完整的IntelliSense儘可能簡單的RazorEngine啓動項目2015年VS2015沒有看到中的LINQ RazorEngine模板

我strugguling上使得在模板中提供LINQ的擴展。他們是正確編譯,但是當模板打開Visual Studio中仍然輸出中的錯誤:

「名單<字符串>」不包含「選擇」接受一個類型的第一個參數「列表<字符串>定義'可以找到(是否缺少using指令或程序集引用?)

@using System.Linq

和錯誤,但錯誤是:

類型或命名空間‘的Linq’不存在在名字空間'S ystem'

我錯過了什麼?

完整的代碼是在這個分支:https://github.com/cyrilgandon/RazorEngineGenerator/tree/LinqUnavailable

我可以看到一些帖子提醒在加的app.config引用,但我並不在這個文檔中看到的任何地方(link)需要做那。

+1

也許你遭受同樣的問題作爲答案在這裏的問題:http://stackoverflow.com/a/23983883/858757 – Silvermind

+0

試過,不工作。智能感知正在工作,它不支持Linq。 –

+0

關閉cshtml文件使錯誤消失...奇怪。 – Thomas

回答

-1

擴展方法只有在引用的名稱空間中時才作爲擴展方法使用。 嘗試添加:

@using System.Linq 
+0

嗨@John Garrard,謝謝你的回答。你正確的使用@using,但是我已經嘗試過了,並且導致了VS無法在'System'中找到'Linq'的其他錯誤,這是主要問題。 –

+0

你說它正確編譯,但VS給出了一個錯誤。所以你得到你想要的結果,但是VS表現不好? –

+0

打開cshtml模板會產生錯誤。這不是一個編譯錯誤,它更像是一個智力錯誤。你應該嘗試通過分岔項目。 –

0

我在項目,自定義模板添加參考 System.Web.WebPages和System.Web.WebPages.Razor固定同樣的問題。這個項目中我沒有任何web.config。

1

我有同樣的問題,我已經嘗試了一切,我可以在這裏找到,沒有任何工作。所以最後我把.NET framework版本從4.0改爲4.5.2,問題就沒有了。