Automapper已失去pcl兼容性

时间:2016-02-26 11:10:31

标签: xamarin automapper portable-class-library automapper-4

我在PCL中使用Automapper 3年了,一切都运行良好。

但是从版本4.2.1开始,当我尝试在PCL中安装它时,我收到以下错误:

Could not install package 'AutoMapper 4.2.1'. 
You are trying to install this package into a project that targets
'portable-net45+win+wp80+MonoTouch10+MonoAndroid10+xamarinmac20+xamarinios10',
but the package does not contain any assembly references or content files that are compatible with that framework. For more information, contact the package author.

我缺少什么新东西吗?

谢谢你们

1 个答案:

答案 0 :(得分:3)

AutoMapper 4.2.1不支持Windows Phone 8(wp80)。这里wp80是基于Silverlight的Windows Phone目标框架。因此,您的便携式类库项目的配置文件是不兼容的。查看AutoMapper 4.2.1,NuGet包的PCL目录为:

portable-net45+win+wpa81+MonoAndroid10+Xamarin.iOS10+MonoTouch10

Xamarin和Mono框架是可选的,因此PCL配置文件基本上是:

net45+win+wpa81

这是一个支持.NET 4.5,Windows 8和Windows Phone应用程序8.1的配置文件。这里wpa81是基于WinRT的Windows Phone目标框架。此PCL配置文件似乎是Profile111。

因此,要使用AutoMapper 4.2.1,您需要更改PCL项目的配置文件。您当前的个人资料似乎是Profile78。如果您切换到Profile111或其他兼容的配置文件,那么您应该能够安装AutoMapper 4.2.1。

或者,您可以使用旧版本的AutoMapper。 AutoMapper 4.1.0目标:

net45+win+wpa81+wp8+MonoAndroid10+Xamarin.iOS10+MonoTouch10

哪个支持Profile78。所以看起来最新的AutoMapper已经放弃了对Windows Phone 8(Silverlight)的支持。