我试图根据(旧版).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软件包中的错误?似乎是这种情况。
版本号不是问题。没有要求或保证任何程序集版本,文件版本或程序包版本都匹配。
PlatformNotSupportedException将来自其他一些问题,尽管通过软件包查看时我不确定。在很大程度上取决于项目的实际构建和运行方式。