检查包是否与 .net core 兼容
Check if package is compatible with .net core
我开始使用 .NET Core 和 ASP.NET Core 进行编程,在阅读了许多 Docs/Tutorials 之后,我仍然不确定如何实现 Nuget-(Meta-)Package 是否 comptabile/usable 在我的 .NET-Core-App 中。
- 如何检查 NuGet 包是否与 .NET Core 兼容。
例如。经常背诵的Newtonsoft JSON。是 compatible/usable - 如何查看?
- 是否有所有可用的 .NET Core 包的列表?
(Like here 它列出了一些
key NuGet packages for .NET Core
)。但是因为他们说这些是 "key"
个包,所以我认为还有更多。但是哪个?
https://packagesearch.azurewebsites.net
转到站点并搜索包以查找其兼容性
好吧,实际上您不必担心,当您在项目中 运行 执行 dotnet restore
命令时,NET Core 应用程序会指示您包是否兼容。
假设您在 csproj 文件中注册了著名的 CSVHelper 包:
<PackageReference Include="CsvHelper" Version="0.12.0"/>
然后,当您 运行 任何 dotnet 命令(例如 build
或 run
时,您将在控制台中输入以下内容,以防交叉-兼容性:
YourProjet/aspnetapp.csproj : warning NU1701: Package 'CsvHelper 0.12.0' was restored using '.NETFramework,Version=v4.6.1, .NETFramework,Version=v4.6.2, .NETFramework,Version=v4.7, .NETFramework,Version=v4.7.1, .NETFramework,Version=v4.7.2, .NETFramework,Version=v4.8' instead of the project target framework '.NETCoreApp,Version=v2.2'. This package may not be fully compatible with your project.
基本上,这意味着 NET Core 应用程序可以使用 ASP.NET NuGet 包,到目前为止,我从未使用过不兼容的包。即使版本不正确,构建也会获取最新匹配的 NuGet 包版本。
希望它能回答您的问题。
也许这会有所帮助 - 许多流行的软件包 https://github.com/thangchung/awesome-dotnet-core
我也没有在任何地方看到 nuget.org,所以:
https://nuget.org
我的一般经验法则是:
如果包依赖于 net standard 或 .net core,它将 运行 与 .net core(还要注意版本)
了解兼容性的最佳方式是tablehere
在此 table 中,您可以检查哪些 API 版本支持 NuGet 包。如果它是标准的 1.0+ - 它适用于 .Net Core
要检查(支持的 API 版本)对您的软件包的依赖性,您可以在 nuget.org 或您的软件包管理器中检查软件包页面
Here is an example for Rider
我开始使用 .NET Core 和 ASP.NET Core 进行编程,在阅读了许多 Docs/Tutorials 之后,我仍然不确定如何实现 Nuget-(Meta-)Package 是否 comptabile/usable 在我的 .NET-Core-App 中。
- 如何检查 NuGet 包是否与 .NET Core 兼容。 例如。经常背诵的Newtonsoft JSON。是 compatible/usable - 如何查看?
- 是否有所有可用的 .NET Core 包的列表?
(Like here 它列出了一些
key NuGet packages for .NET Core
)。但是因为他们说这些是 "key"
个包,所以我认为还有更多。但是哪个?
https://packagesearch.azurewebsites.net
转到站点并搜索包以查找其兼容性
好吧,实际上您不必担心,当您在项目中 运行 执行 dotnet restore
命令时,NET Core 应用程序会指示您包是否兼容。
假设您在 csproj 文件中注册了著名的 CSVHelper 包:
<PackageReference Include="CsvHelper" Version="0.12.0"/>
然后,当您 运行 任何 dotnet 命令(例如 build
或 run
时,您将在控制台中输入以下内容,以防交叉-兼容性:
YourProjet/aspnetapp.csproj : warning NU1701: Package 'CsvHelper 0.12.0' was restored using '.NETFramework,Version=v4.6.1, .NETFramework,Version=v4.6.2, .NETFramework,Version=v4.7, .NETFramework,Version=v4.7.1, .NETFramework,Version=v4.7.2, .NETFramework,Version=v4.8' instead of the project target framework '.NETCoreApp,Version=v2.2'. This package may not be fully compatible with your project.
基本上,这意味着 NET Core 应用程序可以使用 ASP.NET NuGet 包,到目前为止,我从未使用过不兼容的包。即使版本不正确,构建也会获取最新匹配的 NuGet 包版本。
希望它能回答您的问题。
也许这会有所帮助 - 许多流行的软件包 https://github.com/thangchung/awesome-dotnet-core
我也没有在任何地方看到 nuget.org,所以: https://nuget.org
我的一般经验法则是: 如果包依赖于 net standard 或 .net core,它将 运行 与 .net core(还要注意版本)
了解兼容性的最佳方式是tablehere
在此 table 中,您可以检查哪些 API 版本支持 NuGet 包。如果它是标准的 1.0+ - 它适用于 .Net Core
要检查(支持的 API 版本)对您的软件包的依赖性,您可以在 nuget.org 或您的软件包管理器中检查软件包页面
Here is an example for Rider