2

这种情况可能很奇怪。但我想使用 Nuget 将现有的 .NET 4.5.2 类库引用到新的 .Net Standard 1.6 类库中。我根本看不到 Nuget 包商店中的 .Net 4.5.2 类库。

我不想将任何现有项目迁移到 .Net Core,但想在 .Net Core 项目中使用它们。

有可能实现这一目标吗?或者我是否试图实现不是.Net Core 目的的东西。

我的 project.json 如下。

{
  "version": "1.0.0-*",

  "dependencies": {
    "Microsoft.AspNetCore.Identity.EntityFrameworkCore": "1.0.0",
    "NETStandard.Library": "1.6.0",
    "AutoMapper": "5.0.2",
    "Microsoft.EntityFrameworkCore.SqlServer": "1.0.0",
    "Microsoft.VisualStudio.clrdbg": "14.0.25520-preview-3139256"
  },

  "tools" : {
    "Microsoft.EntityFrameworkCore.Tools": {
      "version": "1.0.0-preview2-final",
      "imports": [
        "portable-net45+win8+dnxcore50",
        "portable-net45+win8"
      ]
    }
  },

  "frameworks": {
    "netstandard1.6": {
         "imports": [ "dnxcore50", "net452" ]
    }
  }
}

更新 :

net452frameworks. 然后我收到无法解决已经安装的几个软件包的错误。PFA 截图。

在此处输入图像描述

无论如何我可以强迫它工作。

4

1 回答 1

2

您在框架导入部分缺少 Net45 导入。如果它是一个可运行的项目,那么您需要将 Microsoft.NETCore.App 添加到您的依赖项中并导入必要的框架以使其工作

{
  "version": "1.0.0-*",

  "dependencies": {
    "Microsoft.AspNetCore.Identity.EntityFrameworkCore": "1.0.0",
    "Microsoft.NETCore.App": {
      "type": "platform",
      "version": "1.0.0"
    },
    "AutoMapper": "5.0.2",
    "Microsoft.EntityFrameworkCore.SqlServer": "1.0.0",
    "Microsoft.VisualStudio.clrdbg": "14.0.25520-preview-3139256"
  },

  "tools" : {
    "Microsoft.EntityFrameworkCore.Tools": {
      "version": "1.0.0-preview2-final",
      "imports": [
        "portable-net45+win8+dnxcore50",
        "portable-net45+win8"
      ]
    }
  },

  "frameworks": {
    "netcoreapp1.1": {
      "imports": [
        "portable-net45+wp80+win8+wpa81+dnxcore50",
        "dnxcore50",
        "net452"
      ]
    }
  },
  "buildOptions": {
    "emitEntryPoint": true,
    "preserveCompilationContext": true
  },
}

但是,如果您使用的是 PCL,则需要使用 netstandard 框架并导入必要的框架以构建 PCL。

{
  "version": "1.0.0-*",

  "dependencies": {
    "Microsoft.AspNetCore.Identity.EntityFrameworkCore": "1.0.0",
    "NETStandard.Library": "1.6.0",
    "AutoMapper": "5.0.2",
    "Microsoft.EntityFrameworkCore.SqlServer": "1.0.0",
    "Microsoft.VisualStudio.clrdbg": "14.0.25520-preview-3139256"
  },

  "tools" : {
    "Microsoft.EntityFrameworkCore.Tools": {
     "version": "1.0.0-preview2-final",
     "imports": [
        "portable-net45+win8+dnxcore50",
        "portable-net45+win8"
      ]
    }
  },

  "frameworks": {
    "netstandard1.6": {
      "imports": [
        "portable-net45+wp80+win8+wpa81+dnxcore50",
        "dnxcore50",
        "net452"
      ]        
    }
  }
}
于 2016-08-31T09:08:19.360 回答