gpt4 book ai didi

.NET 标准程序集 : create nuget packages that can be used by . NET Core 和由本地 Nuget.Server 托管的完整 .NET

转载 作者:行者123 更新时间:2023-12-02 04:32:04 25 4
gpt4 key购买 nike

我有一个面向 netstandard 2.0 的程序集,因此它可以在 .NET Core 和完整的 .NET Standard 项目中使用。我正在使用 dotnet pack 命令创建一个 nuget 包,然后将其推送到本地 nuget 主机服务器(按照找到的说明创建 here

现在,由于 netstandard 基础程序集可以从 .NET 4.7.1 项目中使用,我认为当我从 VS nuget 包管理器 UI 列出我的本地 nuget 包时,我应该能够看到以 netstandard 为目标的 nuget 包(该项目是针对 .NET 4.7.1 构建的)。不幸的是,我设法让它显示的唯一方法是更改​​ nuget.server 设置,这样它就不会按框架版本过滤返回的结果。

这是预期的行为吗?我不应该能够添加对具有面向 .net 标准的程序集的 nuget 包的引用吗?

路易斯

最佳答案

如果你看官方.NET standard documentation 你可以看到 .Net standard 2.0 在 .Net framework 4.6.1 及更高版本上受支持,但你需要安装相关的 .Net core 2.0 SDK 才能工作。检查文档中的表格。您可能没有在要使用该包的地方找到它。

另一种选择是,您还可以在项目中添加经典的 .NET Framework 和其他平台。然后,当您构建 NuGet 包时,它还将包含经典 .NET 框架的另一个 dll,因此它始终可以工作。您通过查找以下元素在项目中添加另一个目标平台 <TargetFramework>netcoreapp2.0</TargetFramework>然后您可以更改它以包含例如 <TargetFrameworks>netcoreapp2.0;net461</TargetFrameworks>还包括 .NET 4.6.1。有关哪些值对目标框架有效的更多详细信息,请参阅文档。 Target Frameworks

关于.NET 标准程序集 : create nuget packages that can be used by . NET Core 和由本地 Nuget.Server 托管的完整 .NET,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47740820/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com