如何在project.json中引用特定版本的NetStandard?

时间:2016-10-02 13:38:13

标签: c# json .net-core asp.net-core-1.0 project.json

我正在努力弄清楚如何强制使用npm( Nuget Package Manager )来解析特定版本的NetStandard1.X平台。

我正在尝试使用Serilog,但它支持的.NetStandard版本是v1.3。有没有办法通过一些命令或开关或选项在project.json文件中强制执行此行为。

Microsoft.Framework

指定v1.3 时,您最终会使用 v1.6 。当然必须有办法做到这一点?我正在尝试升级使用log4net的旧.net框架4.6类库,我正在努力解决这里的基础知识。

错误转储:

        {
  "version": "1.0.0-*",

  "dependencies": {
    "NETStandard.Library": "1.6.0",
    "Serilog": "2.2.1"
  },

  "frameworks": {
    "netstandard1.3": {
      "imports": "dnxcore50",
      "dependencies": {
      }
    }
  }
}

DotNet核心版本信息:

产品信息:

版本:1.0.0-preview2-003131

提交SHA-1哈希:635cf40e58

2 个答案:

答案 0 :(得分:1)

您的project.json正确恢复了我的计算机,因此我认为打包/版本控制存在问题。

请尝试更改Serilog依赖版本:

"Serilog": "2.3.0-dev-00711"

或者,正如您在聊天中建议的那样,将正派移至framework标记:

"frameworks": { 
    "netstandard1.6": { 
        "imports": "dotnet5.6", 
        "dependencies": { 
            "Serilog": "2.3.0-dev-00711" 
        } 
    } 
} 

答案 1 :(得分:0)

我不太清楚我明白问题是什么,或者你遇到的问题究竟是什么。

但有一件事让我对你的project.json感到震惊的是NETStandard.Library的版本应该是1.6.0,即使您定位netstandard1.3也是如此。 (是的,令人困惑。)