【问题标题】:.Net Standard project : System.Linq.Enumerable class missing.Net 标准项目:缺少 System.Linq.Enumerable 类
【发布时间】:2017-01-02 07:29:30
【问题描述】:

在 .Net Standard 1.5 项目中(1.6 是从 nuget 安装的)。

我不能使用位于System.Linq.Enumerable 中的Linq 的扩展方法。

喜欢WhereSelectLIST<string> 上的方法

我已经安装了以下软件包:

"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"
    }
  }
}

【问题讨论】:

  • 你有一个小的代码示例吗?还有一些在黑暗中的镜头:您是否检查了库是否被引用,您是否使用“使用”导入了它们,您是在 List 对象上调用它们还是试图在 List 类上调用它们?
  • @prof1990 我正在尝试通过 List 的对象访问 System.Linq.Enumerable 类中存在的扩展方法。我检查过,System.Linq.Enumerable 类不可用,但有趣的是 System.Linq 包已安装。那么扩展方法需要哪个包。
  • 显示完整的project.json
  • 我在 Visual Studio 2017 RC 的 F# 项目中遇到了这个问题。我发现该项目缺少引用,它在“框架”或“扩展”下的“添加引用”中不可用,但我能够通过包管理器找到官方的 Microsoft Nuget 并解决了我的问题。

标签: c# linq .net-standard


【解决方案1】:

我遇到了类似的问题,在 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": {}
        },
..
      },

类似的部分很少。 这是解决方法而不是正确的解决方案

【讨论】:

    【解决方案2】:

    我忘记了这个问题,通过添加需要 System.Linq dll 的包解决了这个问题。不幸的是,我不记得包名,也无法再访问该项目。但是任何面临此类问题的机构都可以尝试一些以 System.Linq.* 开头的包。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-03-03
      • 1970-01-01
      • 1970-01-01
      • 2021-11-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多