次のようなメソッドが 1 つあります。
// Adds an element to the TableElement table in SQL
AddToSql(TableElement deserializedObject)
{
MyEntities entities = new MyEntities();
entities.TableElement.AddObject(deserializedObject);
entities.SaveChanges();
}
既存の行を更新する同様の方法を作成しようとしましたが、私の方法は機能しません
// Doesn't work
UpdateSql(TableElement deserializedObject)
{
MyEntities entities = new MyEntities();
int id = deserializedObject.id;
TableElement elementToOverwrite = entities.TableElement
.Single(s => s.Id == deserializedObject.Id);
// Somehow, I want to give "elementToOverwrite" all the values in "deserializedObject"
// I NEED TO KNOW WHAT GOES HERE.
entities.SaveChanges();
}
更新: を使用できるようですがentities.ApplyCurrentValues("TableElement", deserializedObject)
、逆シリアル化されたオブジェクトに他のテーブルに関連する行が含まれている場合、それらは影響を受けません。