我创建了一个面向 4.6.1 .NET Framework 的 .NET Framework 类库。该项目包含一个 .cs 类,并且没有对任何库、DLL 或 NuGet 包的外部引用。这是 nuspec:
<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<!-- Required elements-->
<id>MyEventLogger.Core</id>
<version>1.0.0</version>
<description>Logs event log</description>
<authors>Me</authors>
</metadata>
<files>
<file src="MyEventLogger.Core\**\bin\Debug\*.dll" target="lib\net" />
<file src="MyEventLogger.Core\**\bin\Debug\*.dll" target="lib\netstandard" />
</files>
</package>
我在从运行 .NET Framework 4.7.1 的 ASP.NET Core 应用程序导入它时遇到问题。
我正在使用 Azure Devops 构建管道来启动包并推送到本地源。我应该如何正确引用它,以便较新版本的 .NET Framework 上的应用程序仍然可以使用旧版本上的这个库?
感谢您的帮助!我找不到如何在任何地方修复此错误或针对多个 .NET Framework 的良好示例。
最佳答案
当我能够使用以下文件节点时,我就开始工作了:
<files>
<file src="**\MyEventLogger.Core.dll" target="lib\net461\MyEventLogger.Core.dll" />
</files>
帮助我解决这个问题的是在我的机器上安装 NuGet 以及安装 NuGetPackageExplorer .您可以使用 NuGetPackageExplorer 创建包,然后导出 .nuspec 文件。我将该 .nuspec 文件复制到我的存储库中,然后将我的 Azure DevOps 构建管道指向 .nuspec 文件。当我将包导入另一个项目时,此错误消失。
关于c# - 导入带有错误 : Package does not support any target frameworks 的简单自定义 NuGet 包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53843330/