可移植类库System.Object错误

Jam*_*ils 6 xamarin.ios xamarin.android portable-class-library .net-4.5 xamarin-studio

我在OS X上的Xamarin Studio中使用了可移植类库(PCL).我有两个PCL库,它们面向.NET 4.5,Windows Phone 8,Windows Store应用程序,Xamarin.iOS和Xamarin.Android.我在iOS,Android和Unit测试项目中引用了这两个库.我在3个区域收到以下错误:

"System.Object"类型在未引用的程序集中定义.您必须添加对程序集'System.Runtime,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'的引用.

代码很简单:

MyClass myClass = new MyClass();
Run Code Online (Sandbox Code Playgroud)

在引用PCL的每个项目中都会发生一次错误.他们都不是同一个班级.我是PCL的新手.我已经尝试删除Windows Phone 8(因为我最后一分钟添加了它)但问题并没有消失.任何帮助都会被指定!

谢谢!

更新:

所以这发生在类中声明的第一个字段(其中类来自PCL项目).

int a = 0;
MyPCLClass _myPCLClass = new MyPCLClass();  //This is where the error appears
Run Code Online (Sandbox Code Playgroud)

另一个奇怪的方面是有超过50个类使用这些类,错误只出现在三个类中.

小智 5

我刚遇到了同样的问题,并且设置与您相同.评论中提到的一个提示(由Stuart提供,后者又提到@DavKean的推文)这个问题为我解决了这个问题.

你必须:

  • 访问Windows机器(我使用的是Windows 8)
  • C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\Facades\System.Runtime.dll
  • 将其复制到Mac
  • dll从每个iOS和Droid项目中添加对此的引用