我有一个先前生成的DLL,其中包含一些我希望在.NETCore项目中重用的企业代码。但是,由于原始DLL是使用.NETFramework 4.5创建和编译的,因此我无法直接添加dll作为参考。
我创建了一个包含我的dll的nuget包,显示为here。之后,我可以将这样的包添加到项目中。但是,我遇到以下错误:
“依赖项MyAssembly.dll不支持框架 .NETCoreApp,版本= 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" ]
}
}
}
答案 0 :(得分:3)
您可以在.netcore类库中的项目json文件中添加多个框架。默认情况下,您将拥有.net核心框架。只需添加逗号并添加所需的.net框架即可。
{
"version": "1.0.0-*",
"frameworks": {
"netstandard1.6": {
"dependencies": {
"NETStandard.Library": "1.6.0"
},
"imports": "dnxcore50"
},
"net45": {
"dependencies": {},
"imports": "net452"
}
}
}
答案 1 :(得分:0)
如果您的.NET 4.5 dll未编译为PCL,则无法从针对netcoreapp1.0的项目中引用它。它应该重新编译为可移植库或目标netstandard API集。