将.NETFramework 4.5 dll添加到.NETCore项目中

我有一个以前生成的DLL与一些企业代码,我想在.NETCore项目中重用。 但是,由于原始DLL是使用.NETFramework 4.5创建和编译的,因此我无法直接添加dll作为参考。

我创建了一个包含我的dll的nuget包,如下所示。 之后,我可以将这样的包添加到项目中。 但是,我有以下错误:

“依赖MyAssembly.dll不支持框架.NETCoreApp,Version = v1.0”

我已经尝试引用.NETCore.Portable.Compatibility但我不认为这是正确的方法。 如何在我的代码中使用此DLL? 这是我添加Nuget包后我的project.json的样子。

{ "version": "1.0.0-*", "dependencies": { "MyAssembly.dll": "1.0.0", "Microsoft.EntityFrameworkCore": "1.0.0", "Microsoft.EntityFrameworkCore.SqlServer": "1.0.0", "Microsoft.NETCore.Portable.Compatibility": "1.0.1", "NETStandard.Library": "1.6.0" }, "frameworks": { "netcoreapp1.0": { "imports": [ "dnxcore50", "portable-net451+win8" ] } } } 

您可以在.netcore类库中的项目json文件中添加多个框架。 默认情况下,您将拥有.net核心框架。 只需添加逗号并添加所需的.net框架即可。

 { "version": "1.0.0-*", "frameworks": { "netstandard1.6": { "dependencies": { "NETStandard.Library": "1.6.0" }, "imports": "dnxcore50" }, "net45": { "dependencies": {}, "imports": "net452" } } } 

如果您的.NET 4.5 dll未编译为PCL,则无法从针对netcoreapp1.0的项目中引用它。 它应该重新编译为可移植库或目标netstandard API集。