【发布时间】:2018-05-25 15:29:31
【问题描述】:
我想更新来自另一个模型的现有实体对象。但是每次我得到一个新对象(具有其他属性的映射属性和默认值。)相反,我想要一个部分更新的目标对象。
AutoMapper.Mapper.Initialize(cfg => cfg.CreateMap<Customer, MYPOCO>().ReverseMap());
public void UpdateEntity(Customer customerSrc)
{
MYPOCO pocoDesc= dbContext.DD_POCO.SingleOrDefault(m => m.Id == 123);
pocoDesc = AutoMapper.Mapper.Map<Customer, MYPOCO>(customerSrc, pocoDesc);
// Here "pocoDesc" is a new object, I got only "customerSrc" data and lost all other existing properties values.
}
Automapper:6.2.2(版本)
试过Automapper: Update property values without creating a new object
有什么想法吗?
【问题讨论】:
-
这似乎与以下内容重复:stackoverflow.com/questions/2374689/…
-
您使用的是正确的
Map重载,因此您的pocoDesc应该与SingleOrDefault调用获得的实例相同。你确定SingleOrDefault不返回null吗?如何将其更改为Single? -
SingleOrDefault 返回正确的数据,不为空
-
@IvanStoev 尝试使用 Single 但未获得更新的对象
标签: asp.net-mvc entity-framework-6 automapper