Entity framework 使用EF执行更新后,相关记录不会更改,不会出现错误
我使用EF并在我的存储库中的更新操作中使用此代码Entity framework 使用EF执行更新后,相关记录不会更改,不会出现错误,entity-framework,asp.net-mvc-4,Entity Framework,Asp.net Mvc 4,我使用EF并在我的存储库中的更新操作中使用此代码 public void Update(ValueField valueField) { var db = new myEntities(); var updatingRow = Find(valueField); updatingRow.ValueFieldID = valueField.ValueFieldID; updatingRow.Produc
public void Update(ValueField valueField)
{
var db = new myEntities();
var updatingRow = Find(valueField);
updatingRow.ValueFieldID = valueField.ValueFieldID;
updatingRow.ProductTypeID = valueField.ProductTypeID;
db.SaveChanges();
}
我并没有错误,也并没有任何异常,但数据库中我的表中的相关记录并没有改变。
怎么了?这行代码:
var updatingRow = Find(valueField);
未使用当前上下文,这意味着db
看不到任何更改。将其更改为:
var updatingRow = db.Find(valueField);
“查找”是我的存储库中的一个函数,它可以执行此操作,但可以使用它自己的
myenties
实例找到我们,因此您的本地版本(db
)不会跟踪更改。