.NET Core netstandard 1.2类库中不存在BindingFlags

sup*_*jos 7 c# reflection .net-core

在针对这两者net452netstandard1.3框架的.NET Core类库项目中,我试图将后者向后移动netstandard1.2以扩展后向兼容性.

项目使用BindingFlags枚举并在net452和netstandard1.3上构建正常,但它在netstandard1.2上失败并出现一些错误,所有这些都看起来像:

CS0103当前上下文中不存在名称"BindingFlags"

或者喜欢:

CS7069引用类型'BindingFlags'声称它在'System.Reflection'中定义,但找不到它

目前,project.json中的frameworks属性是:

"frameworks": {
  "netstandard1.2": {
    "imports": [
      "dnxcore50",
    ],
    "dependencies": {
      "NETStandard.Library": "1.6.0",
      "runtime.any.System.Collections": "4.0.11",
      "System.Collections": "4.0.11",
      "System.Collections.NonGeneric": "4.0.1",
      "System.Console": "4.0.0",
      "System.IO.FileSystem": "4.0.1",
      "System.Reflection.TypeExtensions": "4.1.0",
      "System.Runtime.Serialization.Xml": "4.1.1",
      "System.Text.Encodings.Web": "4.0.0"
    }
  },
  "net452": {
    "frameworkAssemblies": {
      "System.IO": "",
      "System.Runtime.Serialization.Xml": "",
      "System.Xml": "",
      "System.Web": ""
    }
  }
},
Run Code Online (Sandbox Code Playgroud)

它已经列出了依赖关系System.Reflection.TypeExtensions.

显示 popup建议安装的潜在修复"System.Reflection": "4.3.0-preview1-24530-04",但只发现该类型仍显示红色波浪线.另一个Show的潜在修复弹出窗口第二次建议安装"System.Reflection.TypeExtensions": "4.3.0-preview1-24530-04".当然,不会影响错误,那仍然存在.

构建net452方面很好,错误只在netstandard1.2构建时.

这种BindingFlags类型有什么问题?

Ale*_*ger 8

根据netstandard 1.5 diff,BindingFlagsenum被添加到1.5版本的标准中.

在它通过System.Reflection.TypeExtensions包之前可用,它只支持1.3或更高版本,因此目标1.2不起作用.