iOS 项目编译失败

iOS Project Fails to Compile

编译使用MvvmCross 3.5.0版开发的iOS项目时,出现如下错误:

无法解析来自 "Xamarin.iOS, Version=0.0.0.0, Culture=neutral, PublicKeyToken=84e04ff9cfb79065"

的 "Foundation.NSDate Foundation.NSDate::op_Explicit(System.DateTime)" 引用

错误在方法中:

public LinkerPleaseInclude class 中的 void Include(UIDatePicker date)。 尝试将 DateTime 作为 NSDate 传递。

只需注释掉或删除以下代码:

public void Include(UIDatePicker date)
{
    date.Date = date.Date.AddSeconds(1);
    date.ValueChanged += (sender, args) => { date.Date=NSDate.DistantFuture; };
}

也可以通过更新二进制库统一解决api。

您可以在

上获得详细信息

http://developer.xamarin.com/guides/cross-platform/macios/unified/

您可能正在使用 过时 版本的 MvvmCross(或其他第 3 方),该版本使用 旧的预览 版本 统一API.

该错误告诉您一个程序集(二进制)正在寻找它找不到的成员,因为它已被删除:请参阅第 "Converting DateTime to NSDate"

更新您的依赖项(任何程序集二进制文件)将正确解决此问题,而不会可能引入其他问题。