8
我嘗試更新,我以前保存的EntityFramework 4.1(CodeFirst)更新實體框架4.1(CodeFirst)
類工作具有以下屬性的對象到子對象的引用...
public class Job
{
[key]
public int Id { get; set; }
public string Title { get; set; }
public Project Project { get; set; }
public JobType JobType { get; set; }
public string Description { get; set; }
}
最初的創建工作正常,但更新只提交更改字符串..
如果我改變子對象,例如在JobType
財產JobTypeA
到JobTypeB
- T的他改變不承諾...
我不想提交對JobType的更改 - 只對作業。
using (var context = new JobContext())
{
context.Jobs.Attach(job);
context.Entry(job).State = EntityState.Modified;
context.SaveChanges();
}
看看SQL事件探查器 - 這些Ids甚至沒有被髮送用於更新 - 但是它們用於初始插入!
「這是一個典型的情況,如果您在您的模型中公開外鍵作爲屬性,這種情況會變得更加簡單」 這個。這應該包含在每個EF教程中。它如何讓事情「正常工作」是不可置信的。 –
@EugenTimm更新分離時如何工作?你是否更新導航屬性或FK? –