Entity framework 自动映射取消实体键
我有一个简单的更新方法:Entity framework 自动映射取消实体键,entity-framework,automapper,Entity Framework,Automapper,我有一个简单的更新方法: public void Update(Users user) { tblUserData userData = _context.tblUserDatas.Where(u => u.IDUSER == user.IDUSER).FirstOrDefault(); if (userData != null) { Mapper.CreateMap<Users, tblUserData
public void Update(Users user)
{
tblUserData userData = _context.tblUserDatas.Where(u => u.IDUSER == user.IDUSER).FirstOrDefault();
if (userData != null)
{
Mapper.CreateMap<Users, tblUserData>();
userData = Mapper.Map<Users, tblUserData>(user);
_context.SaveChanges()
}
}
公共作废更新(用户)
{
tblUserData userData=_context.tblUserData.Where(u=>u.IDUSER==user.IDUSER).FirstOrDefault();
if(userData!=null)
{
CreateMap();
userData=Mapper.Map(用户);
_context.SaveChanges()
}
}
当我调用Map()时,userData中的实体键被置空,这让我非常困惑。有人知道如何在保留实体密钥的同时映射属性吗
谢谢
Chris您的目标对象是否与源对象具有完全相同的属性名称?确实如此,但如果目标对象具有源对象没有的属性,Automapper会将该属性擦除吗?不会擦除该属性,但它也不会映射值,因此会映射null或其他默认值。