本文主要是介绍System.Drawing is not supported on this platform,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在跨平台编程中很有可能会遇到一些库执行不正确的问题,比如,我在用NuGet引入库的时候就遇到了类似问题。我引入System.Drawing.Common.dll到UWP工程中,编码的时候并没有报错,但是运行时就出错了:System.Drawing is not supported on this platform
刚开始的时候,我以为是我引入的方式不对,检查后没有什么问题。网上有人说是自动引入出了问题,手动引入了C:\Users\用户名\.nuget\packages\system.drawing.common\4.7.0\runtimes\win\lib\netcoreapp2.0,问题就解决了。对此就我个人观点并不赞同!我感觉这个首先要看你创建的是什么样的工程不是?你创建一个.net core的工程,这样处理,可能能运行。我这里创建的是一个UWP的工程,这就有点牵强。而且这里直接引用的是runtime相关的,总觉得哪里不对啊。
最后我在官方网站上查到,UWP目前根本就不支持System.Drawing这个命名空间,而System.Drawing在程序集System.Drawing.Common.dll中,所以要使用System.Drawing就需要引入这个程序集。但是UWP平台它不支持呀,这样一点毛病都没有了!
要解决问题就要么需求第三方库的支持,要么自己架构一个中间层,完成类似功能。就我所知,目前暂时没有完美的解决方案。
这篇关于System.Drawing is not supported on this platform的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!