VS2015 在 RazorEngine 模板中看不到 Linq
本文关键字:看不到 Linq RazorEngine VS2015 | 更新日期: 2023-09-27 18:36:50
我正在尝试在Visual Studio 2015中使用完整的IntelliSense创建最简单的RazorEngine启动项目。
我正在努力使 Linq 扩展在模板中可用。它们已正确编译,但Visual Studio在打开模板时仍然输出错误:
"列表<字符串>"不包含"选择"的定义,接受可以找到"列表<字符串>"类型的第一个参数(您是否缺少 using 指令或程序集引用?字符串>字符串>
和错误 @using System.Linq
,但错误是:
命名空间"System"中不存在类型或命名空间"Linq"
我错过了什么?
完整的代码在这个分支上: https://github.com/cyrilgandon/RazorEngineGenerator/tree/LinqUnavailable
我可以看到一些帖子建议在 app.config 中添加引用,但我在文档(链接)中的任何地方都没有看到需要这样做。
我遇到了同样的问题,我已经尝试了我能在这里找到的所有东西,但没有任何效果。所以最后我将.NET framework版本从4.0更改为4.5.2,问题消失了。
我通过添加对System.Web.WebPages 和 System.Web.WebPages.Razor 在具有自定义模板的项目中。我在这个项目中没有任何web.config。
我有同样的问题,问题出在具有这些行的 web.config(不是视图下的那个)中
<dependentAssembly>
<assemblyIdentity name="System.Web.Razor" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>
删除这些行后,问题消失了,智能感知再次开始为 Linq 表达式工作。
更新:
好的,卸载VS 2013后,错误又回来了。但是在安装这两个后它得到了修复MVC4 - https://www.microsoft.com/en-us/download/details.aspx?id=30683网页 2.0 - https://www.microsoft.com/en-us/download/details.aspx?id=34600
我认为它在安装网页 2.0 后已修复,但我也安装了 MVC4 以更安全
扩展方法仅在引用的命名空间中时才用作扩展方法。尝试添加:
@using System.Linq