具有现有sql后端的Azure移动应用程序

时间:2017-10-11 15:30:00

标签: azure-sql-database automapper azure-mobile-services

我在之前的堆栈溢出示例中一直关注这些示例,我需要将Integer id转换为Azure移动应用程序,并且需要用户Kiske1在下面的帖子中描述的MappingDomainManager类。

Azure Mobile App using existing database

但是,我无法完成此操作,因为Automapper.impl.PropertyAccessor是“名称空间类型Impl不存在...”我使用的是最新的Automapper dll v6.1.1.0。

有谁知道PropertyAccessor被移动到/取代的位置? 此外,本文中指定的两个示例均来自2014年,有没有人知道更新的演练,最好是示例项目?

1 个答案:

答案 0 :(得分:0)

  

有谁知道PropertyAccessor被移动到/或替换为?

我在AutoMapper项目进行了搜索,发现PropertyAccessor已被删除。此外,我检查了我的移动应用项目,Automapper版本是3.3.1,PropertyAccessor存在,旧的sample可以工作。我假设您可以尝试降级Automapper的版本以解决此问题。

  

有没有人知道更新的演练,最好是一个示例项目?

对于Automapper 6.1.1,FindTypeMapFor方法的用法和GetExistingPropertyMapFor方法的参数类型已更改,您可以在SimpleMappedEntityDomainManager下修改代码,如下所示:

var m = Mapper.FindTypeMapFor<TModel, TData>();
m.GetExistingPropertyMapFor(new PropertyAccessor(typeof(TData).GetProperty("Id")));

var m = Mapper.Configuration.FindTypeMapFor<TModel, TData>();
m.GetExistingPropertyMapFor(typeof(TData).GetProperty("Id"));

此外,你可以参考adrian hall的关于The Domain Manager的书。

相关问题