更新链接到实体
本文关键字:实体 链接 更新 | 更新日期: 2023-09-27 18:14:30
我正在尝试使用Linq to Entities构建一个数据访问层。我遇到了一个问题,我想更新整个对象,但我不确定如何做到这一点。到目前为止,我有以下内容:
public static Character Update(Character character)
{
using (Entities entities = new Entities())
{
Character characterToUpdate = entities.Characters.Where(c => c.PK_CharacterID == character.PK_CharacterID).First();
characterToUpdate = character;
entities.SaveChanges();
return character;
}
}
但是,我意识到在这种情况下更改"Character"对象只是替换了对象的实例。有没有办法在不逐个属性的基础上更新对象?
谢谢!
在不使用自动映射库的情况下做到这一点的唯一方法是…
entities.Entry(characterToUpdate).CurrentValues.SetValues(character);
这将取代所有非导航属性。