更新Linq To Entities

时间:2014-07-24 13:14:38

标签: c# linq entity-framework linq-to-entities

我正在尝试使用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”对象只是替换了对象的实例。有没有办法在不逐个属性的情况下更新对象?

谢谢!

1 个答案:

答案 0 :(得分:1)

没有使用自动化库的唯一方法就是这个......

entities.Entry(characterToUpdate).CurrentValues.SetValues(character);

这将替换所有非导航属性的属性。