.NET标准项目:System.Linq.Enumerable类丢失。

4
在 .Net Standard 1.5 项目中(从 nuget 安装了 1.6),我无法使用 System.Linq.Enumerable 中的 Linq 扩展方法,例如 LIST 上的 Where 和 Select 方法。我已经安装了以下包:
"System.Linq": "4.3.0",
"System.Linq.Expressions": "4.3.0",
"System.Linq.Queryable": "4.3.0",

更新

示例:

using System.Linq;

List<string> myList = new List(); 
myList = // suppose list got data

myList.Where(  // Where is not available 

注意

System.Linq.Enumerable静态类包含的扩展方法不可访问。

更新2

{
  "supports": {},
  "dependencies": {
    "Chance.MvvmCross.Plugins.UserInteraction": "1.1.4",
    "Fody": "1.29.4",
    "MethodDecorator.Fody": "0.9.0.6",
    "Microsoft.NETCore.Portable.Compatibility": "1.0.1",
    "MvvmCross": "4.3.0",
    "MvvmCross.Platform": "4.3.0",
    "NEST": "5.0.0",
    "NETStandard.Library": "1.6.1",
    "Newtonsoft.Json": "9.0.1",
    "PropertyChanged.Fody": "1.52.1",
    "System.Linq": "4.3.0",
    "System.Linq.Expressions": "4.3.0",
    "System.Linq.Queryable": "4.3.0",
    "System.ServiceModel": "1.0.0",
    "System.ServiceModel.Http": "4.3.0",
    "System.ServiceModel.Security": "4.3.0"
  },
  "frameworks": {
    "netstandard1.5": {
      "imports": "portable-net45+netcore45+wp8"
    }
  }
}

你有一个小的代码示例吗?还有一些猜测:你是否检查了库的引用,是否使用“using”导入它们,并且是否在List对象上调用它们,或者你是在尝试在List类上调用它们? - prof1990
@prof1990 我正在尝试通过 List<T> 对象访问 System.Linq.Enumerable 类中存在的扩展方法。我已经检查过,System.Linq.Enumerable 类不可用,但有趣的是 System.Linq 包已安装。那么需要哪个包来使用这些扩展方法呢? - Irshad Ali
展示完整的 project.json 文件。 - haim770
我在Visual Studio 2017 RC的一个F#项目中遇到了这个问题。我发现该项目缺少引用,无法从“Framework”或“Extensions”的“添加引用”中获取,但是我能够通过包管理器找到官方的Microsoft Nuget并解决了我的问题。 - turkinator
2个回答

0

我忘记了这个问题,问题是通过添加需要 System.Linq dll 的包来解决的。不幸的是,我不记得包的名称,而且我已经无法访问该项目。但是,任何遇到此类问题的人都可以尝试一些以 System.Linq.* 开头的包。


0

我遇到了类似的问题,根据 project.lock.json 文件的修改,“修复”了这个问题:

"System.Linq/4.3.0": {
..
        "compile": {
          "portable-net45+win8+wp8+wpa81/_._": {}
        },
..
      },

使用

"System.Linq/4.3.0": {
..
        "compile": {
          "ref/netstandard1.0/System.Linq.dll": {}
        },
..
      },

有几个类似的部分。 这更像是一种变通方法而不是正确的解决方案。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接