我正在我的AccountEditViewModel
(用于编辑用户的视图模型)和我的User
(表示数据库中的用户的数据模型)之间创建一个 Automapper 映射。如果填写了密码字段,我想加密该密码并存储它,但是如果它在我想保留旧密码中为空。我已经尝试过下面的代码,但是它是错误的,model.Ignore() 不返回字符串值。解决此问题的最佳方法是什么。我可以使用该ForMember()
方法完成此操作,还是需要自定义解析器?
Mapper.CreateMap<AccountEditViewModel, User>()
.ForMember(model => model.Password, model => model.MapFrom(user => user.Password != null ? EncryptPassword(user.Password) : model.Ignore()));