我的项目有问题,我的PCL用于.Net 4.5,Windows Phone 8,WinRT,MonoTouch和MonoDroid,当我尝试构建MonoDroid或MonoTouch项目时,参考了PCL错误如下:
*错误1类型'System.Object'在未引用的程序集中定义。您必须添加对程序集'System.Runtime的引用, Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'。
错误2类型'System.Enum'是在没有的程序集中定义的 引用。您必须添加对程序集'System.Runtime的引用, Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'。
我已完成suggested命令(sn -Vr *,b03f5f7f11d50a3a),但它没有帮助。我使用以下个人资料:
C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETPortable\v4.5\Profile\Profile78
答案 0 :(得分:3)
如果将兼容性设置为从.NET 4.5到.NET 4.0.3,它将起作用。
答案 1 :(得分:1)
当我在配置文件104中遇到类似的错误时,我已经构建了类似System.Windows.dll和System.Net.dll的虚假系统程序集,它们会转发有问题的类。我推迟签署这些假装配 - 幸运的是,MonoDroid和MonoTouch似乎没有仔细检查这些延迟签名。
这些例子位于:https://github.com/slodge/MvvmCross/tree/v3/PortableSupport
我猜你可以使用与MonoDroid和MonoTouch链接的2个System.Runtime程序集以及类型转发System.Object和System.Enum来做同样的事情。
希望Xamarin的PCL支持很快就会发布 - 并将包括这些垫片组件的正式版本。