6

我正在尝试将我的 ASP.NET 5 RC1 项目升级到 ASP.NET Core RC2 项目。我遇到了一些问题,因为我使用的库还不支持 .NET Core,所以我必须在完整的框架上运行。这在 RC1 中运行良好,但我无法找到在 RC2 中实现此目标的正确方法。

我有一个可以恢复包并正确构建的类库。我有一个引用类库的测试项目。当我尝试构建测试项目时,出现以下错误:

> dotnet build
Project TenantService (.NETFramework,Version=v4.5.1) was previously compiled. Skipping compilation.
Project TenantServiceTests (.NETCoreApp,Version=v1.0) will be compiled because expected outputs are missing
Compiling TenantServiceTests for .NETCoreApp,Version=v1.0
C:\projects\TenantService\test\TenantServiceTests\project.json(25,23): error NU1001: The dependency mscorlib could not be resolved.
C:\projects\TenantService\test\TenantServiceTests\project.json(9,31): error NU1001: The dependency mscorlib could not be resolved.
C:\projects\TenantService\test\TenantServiceTests\project.json(25,23): error NU1001: The dependency mscorlib could not be resolved.
C:\projects\TenantService\test\TenantServiceTests\project.json(9,31): error NU1001: The dependency mscorlib could not be resolved.
C:\projects\TenantService\test\TenantServiceTests\project.json(26,21): error NU1001: The dependency System could not be resolved.
C:\projects\TenantService\test\TenantServiceTests\project.json(9,31): error NU1001: The dependency System could not be resolved.
C:\projects\TenantService\test\TenantServiceTests\project.json(26,21): error NU1001: The dependency System could not be resolved.
C:\projects\TenantService\test\TenantServiceTests\project.json(9,31): error NU1001: The dependency System could not be resolved.
C:\projects\TenantService\test\TenantServiceTests\project.json(27,26): error NU1001: The dependency System.Core could not be resolved.
C:\projects\TenantService\test\TenantServiceTests\project.json(9,31): error NU1001: The dependency System.Core could not be resolved.
C:\projects\TenantService\test\TenantServiceTests\project.json(27,26): error NU1001: The dependency System.Core could not be resolved.
C:\projects\TenantService\test\TenantServiceTests\project.json(9,31): error NU1001: The dependency System.Core could not be resolved.
C:\projects\TenantService\test\TenantServiceTests\project.json(9,31): error NU1001: The dependency Microsoft.CSharp could not be resolved.

这两个项目的 project.json 文件如下所示:

src\TenantService\project.json

{
  "version": "1.0.0-*",

  "dependencies": {
    "NETStandard.Library": "1.5.0-rc2-24027",
    "Microsoft.Extensions.Options": "1.0.0-rc2-final",
    "Newtonsoft.Json": "8.0.4-beta1",
    "MongoDB.Driver": "2.2.4",
    "StackExchange.Redis": "1.1.603"
  },

  "frameworks": {
    "net451": {}
  }
}

test\TenantServiceTests\project.json

{
  "version": "1.0.0-*",
  "testrunner": "xunit",
  "description": "TenantServiceTests Class Library",
  "authors": [ "Henning" ],

  "dependencies": {
    "xunit": "2.1.0",
    "TenantService": "1.0.0-*",
    "dotnet-test-xunit": "1.0.0-rc2-build10015"
  },

  "frameworks": {
    "netcoreapp1.0": {
      "dependencies": {
        "Microsoft.NETCore.App": {
          "type": "platform",
          "version": "1.0.0-rc2-3002702"
        }
      },
      "imports": [
        "net451"
      ]
    }
  }
}

为了在我的应用程序中使用 net451 库,我应该如何正确设置它?

4

1 回答 1

3

无法解析依赖 mscorlib

我昨天遇到了同样的问题。问题是project.json测试项目的目标是netcoreapp1.0. 相反,您可以将net451框架作为您正在测试的服务的目标,并且应该“正常工作”。

{
  "version": "1.0.0-*",
  "testrunner": "xunit",
  "description": "TenantServiceTests Class Library",
  "authors": [ "Henning" ],

  "dependencies": {
    "xunit": "2.1.0",
    "TenantService": "1.0.0-*",
    "dotnet-test-xunit": "1.0.0-rc2-build10015"
  },

  "frameworks": {
    "net451": { }
  }
}

有关此结帐的更多详细信息,请参阅从 ASP.NET 5 RC1 迁移到 ASP.NET Core。另一个很好的资源是corefx 存储库中详细说明.NET Platform Standard的降价文件。

于 2016-05-20T11:31:02.957 回答