【发布时间】:2013-10-21 12:58:42
【问题描述】:
我的实体类(它是我的 Entity Framework Code First DbContext 的一部分)如下所示:
public class Person
{
public int Id { get; set; }
public string Name { get; set; }
public virtual Person Boss { get; set; }
public decimal Piotrus { get; set; }
}
现在我正在尝试像这样更新人老板:
using(var db = new DataContext())
{
var employee = db.Persons.Single(p => p.Name = "Kowalski");
employee.Boss = db.Persons.Single(p => p.Name = "Malysz");
db.Entry(employee).State = State.Modified;
db.SaveChanges();
}
虽然调试实体似乎没问题。它有正确的老板分配。即使我尝试从当前 DbContext 获取数据,它看起来也不错,但在数据库属性 Boss_Id 中保持不变,而其他属性(如果已更改)已被修改。
当我创建一个人时,一切正常。分配的老板已正确存储。
什么会导致这个问题?
【问题讨论】:
标签: sql-server asp.net-mvc entity-framework ef-code-first entity-framework-5