。NET System.Drawing.Common 4.5.1的NuGet程序包包含不正确的程序集版本

问题描述 投票:0回答:1

我试图根据(旧版).NET Standard 2.0在项目中使用System.Drawing.Common。如果我尝试以Standard 2.1为目标,则我的一个依赖项pythonnet会遇到兼容性问题,因此我需要坚持使用2.0,直到pythonnet正式支持.NET Standard。当前,如果pythonnet以.NET Standard 2.0为目标,则可以导入我的程序集,但不适用于.NET Standard 2.1。]

对于.NET Standard 2.0兼容性,可用的最新软件包为System.Drawing.Common 4.5.1。安装此程序后,将生成我的解决方案,但在运行时会收到错误

System.PlatformNotSupportedException: 'System.Drawing is not supported on this platform.'

根据this page,此版本的System.Drawing.Common程序包应能够针对.NET Standard 2.0。我发现NuGet软件包包含用于不同平台的多个System.Drawing.Common.dll文件,但文件版本为4.6.2。

NuGet package containing mismatched version of assembly

我是否缺少某些东西,或者这是NuGet软件包中的错误?似乎是这种情况。

c# .net .net-core .net-standard
1个回答
0
投票

版本号不是问题。没有要求或保证任何程序集版本,文件版本或程序包版本都匹配。

PlatformNotSupportedException将来自其他一些问题,尽管通过软件包查看时我不确定。在很大程度上取决于项目的实际构建和运行方式。

© www.soinside.com 2019 - 2024. All rights reserved.