所以我想更新/替換一個完整的行與我有的數據。 而不是做 entityA.Name = entityB.NameLinq更新一個完整的行
我想說一些像entityA = entityB,其中entitiyB與entityA相同,但具有新的值。
請讓我知道。
謝謝..
所以我想更新/替換一個完整的行與我有的數據。 而不是做 entityA.Name = entityB.NameLinq更新一個完整的行
我想說一些像entityA = entityB,其中entitiyB與entityA相同,但具有新的值。
請讓我知道。
謝謝..
簡單地做entity1 = entity2
將改變使用實體引用,因此上下文不會跟蹤新的參考AY更多。因此改變的值不會被更新。
你應該使用對象映射器。我個人使用,可以使用包管理器控制檯命令Install-Package Glue
安裝膠 還有其他的太像AutoMapper
,如果你用膠水去然後就做出這樣
var mapping = new Mapping<entity1, entity2>();
mapping.AutoRelateEqualNames();
//or define a mapping using .Relate()
//then call map
mapping.Map(entity1)//this will return entity2
or if you already have an object tracked by a context class call
entity2 = mapping.Map(entity1, entity2);
我現在正在使用Automapper,但即使這樣也沒有更新我的數據庫。這是我的代碼 - RecordtoUpdate = AutoMapper.Mapper.Map(datafromForm,RecordtoUpdate) dbContext.SaveChanges() – Prashant 2013-05-07 19:55:10
您的代碼丟失 – 2013-05-07 19:56:01
我現在使用Automapper,但即使這不是更新我的數據庫。這是我的代碼 - RecordtoUpdate = AutoMapper.Mapper.Map(datafromForm,RecordtoUpdate)dbContext.SaveChanges() – Prashant 2013-05-07 19:57:43
映射我們應該讓你知道? – Hogan 2013-05-07 19:02:55
所以我試圖做這個entityA = entityB,但那不適合我。我也在做db.SaveChanges(),但我的數據庫沒有顯示新的值? – Prashant 2013-05-07 19:04:21
你可以添加'entityB'並刪除'entityA'嗎? – ajakblackgoat 2013-05-08 05:06:48