忽略使用Automapper映射事件

内存

我有两个相同的对象(AB)。我想将所有A属性映射B属性,但是我想PropertyChanged在映射时忽略事件。

的签名PropertyChanged是:

public event PropertyChangedEventHandler PropertyChanged;

我的B对象在PropertyChangedbefor映射中有一些值,但是以下代码导致了B.PropertyChanged == Null

B = Mapper.Map<myClass, myClass>(A);

我尝试了这个:

Mapper.CreateMap<myClass, myClass>().ForMember(x => x.PropertyChanged, opt => opt.Ignore())

但是我得到这个错误:

... PropertyChanged只能出现在+ =或-=的左侧...

我如何忽略与Automapper映射事件处理程序属性???

格特·阿诺德

您使用了错误的映射语句。

B = Mapper.Map<myClass, myClass>(A);

创建一个B对象先前的对象不见​​了。显然,新的B没有事件处理程序。

相反,您应该使用

Mapper.Map(A, B);

现在已有 B接收A的价值观,你会看到BPropertyChanged事件(S)将闪光。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章