【发布时间】:2011-07-27 06:38:44
【问题描述】:
我正在使用 JSON.NET,其中合并了 LinqBridge .dll。LinqBridge 允许从 .NET 2 访问 Linq。如果我尝试使用 Linq,即使在导入 System.Linq 之后,我也会收到以下错误:
Error 13 Could not find an implementation of the query pattern for source type 'int[]'. 'Where' not found. Are you missing a reference to 'System.Core.dll' or a using directive for 'System.Linq'? C:\Users\chrisl\Desktop\SoftTokens\Windows Desktop Soft-Token\Program.cs 27 25 WindowsSoftToken
如果我尝试包含 LinqBridge,那么由于 JSON.NET 已经包含它,我会收到此警告。另外,我已经包含了两次相同的组件,效率很低:
Warning 2 The predefined type 'System.Action' is defined in multiple assemblies in the global alias; using definition from 'c:\Users\chrisl\Desktop\SoftTokens\Windows Desktop Soft-Token\libs\Newtonsoft.Json.Net20.dll' WindowsSoftToken
如果我在对象浏览器中浏览 Newtonsoft.Json.Net20,我看到 System.Linq 显示为空,即使在我选择了 Show hidden types and methods 之后也是如此。
是否可以从 JSON.NET dll 访问 Linq 或抑制错误消息?
【问题讨论】:
-
您的目标是什么版本的 .NET 框架?什么版本的 JSON.Net?
-
@Mike:JSON.NET 4.0 和目标 .NET 2
-
我已经为这个案例发布了一个问题。我有同样的问题,此时我决定在没有 LinqBridge.cs 的情况下重新编译 Json.NET 项目:github.com/JamesNK/Newtonsoft.Json/issues/8
标签: json.net linqbridge