无法加载文件或程序集’System.Drawing,Version = 4.0.0.0

我安装了Monogame,当我尝试运行一个非常简单的hello世界风格的游戏时,我得到了这个例外。 我知道有关此错误的堆栈溢出有几个post,但我仍然对如何解决此问题感到困惑。 我是否需要卸载.Net并重新安装其他版本? 如果是这样,我该怎么做?

抛出了System.IO.FileNotFoundException。 无法加载文件或程序集’System.Drawing,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a’或其依赖项之一。

这是Xamarin项目的可下载链接:

https://www.dropbox.com/s/q7quw26lg1etdts/MonoGameTester.zip

如果您引用了附带Xamarin.iOS的程序集,则会发生此类错误。 System.Drawing.dll属于这种情况。

在你的情况下,这很可能是因为你的项目引用了monotouch.dllMonoMac.dll并且不会起作用。

您需要为每个目标构建单独的项目,即一个用于iOS(monotouch.dll),另一个用于OSX(MonoMac.dll)。

从每个项目中,您可以共享源代码和/或程序集(用于共享逻辑)。 这两个项目还需要包含特定于平台的代码和参考。

您最终会得到许多共享代码(在源代码或程序集中),并带有一些特定于平台的代码。

我遇到了同样的问题,上面的建议对我没用,所以我做了以下几点:

打开你的项目
转到解决方案资源管理器
展开“引用”组
删除System.Drawing引用
右键单击“引用”组
添加参考
在“.NET”选项卡上,搜索System.Drawing以添加正确的引用