c# - 从完整引用 .net 标准库是否需要运送系统。* 程序集

标签 c# .net .net-standard .net-standard-1.4

我注意到在从我的 .net 完整项目 (4.6.1) 中引用 .net 标准库 (1.4) 后,我的输出文件夹中充满了 System.*.dll 程序集。

这是否意味着如果我以完整框架为目标但引用 .net 标准库,我必须随附它使用的所有系统库的 .net 标准版本?

最佳答案

通常当你制作一个你想要做的 .NET 标准库时 Multi-targeting .在您的 .csproj 文件中,您将更改您的

<TargetFramework>netstandard1.4</TargetFramework>

<TargetFrameworks>netstandard1.4;net45</TargetFrameworks>

注意将 s 添加到标记中。

完成此操作并为库生成 NuGet 包后,库将直接支持 .net 4.5 和 netstandard。

例如,这里来自Json.NET's csproj file.

<TargetFrameworks Condition="'$(DotnetOnly)'==''">net45;net40;net35;net20;netstandard1.0;netstandard1.3;portable-net45+win8+wpa81+wp8</TargetFrameworks>

因此它将为 .NET 4.5、.NET 4.0、.NET 3.5、.NET 2.0、netstandard 1.0、netstandard 1.3 和一个针对 net45、win8、wpa81 和 wp8 的 PCL 库生成 DLL,所有这些 dll 都将打包到 NuGet 包中,当您引用该包时,只会使用最接近的匹配项。

关于c# - 从完整引用 .net 标准库是否需要运送系统。* 程序集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43034867/

相关文章:

c# - 带双引号的Excel公式和C#

c# - PHP调用的C#程序中的文件访问

c# - 如何找到字符串中值的倒数第二个索引?

c# - WPF MVVM : Display View for DataGrid's SelectedItem

c# - 运行 .NET Standard 1.6 库中包含的 xunit 测试

.net-core - 如何在 SkiaSharp 中将字节数组转换为 SKBitmap?

c# - 如何从 C# 使用 MS DIA SDK?

c# - 测试接口(interface)是否支持某个方法并调用它的最佳实践是什么?

C# 从 MemoryStream 打开 Office 文档和 Xps 文件

azure-functions - 错误: Cannot load file or assembly netstandard,版本= 2.1.0.0