我正在开发一个动态数据应用程序,在该应用程序中,我正在尝试在更新请求期间执行insert-requestrevision(记录请求的更改,类似这样的事情)。
public partial class ProjectDataContext
{
partial void UpdateRequest(Request instance)
{
RequestRevision rv = new RequestRevision(Requests.GetOriginalEntityState(instance));
this.ExecuteDynamicInsert(rv);
this.ExecuteDynamicUpdate(instance);
}
}
此代码错误“无法对实体执行操作,因为它未被更改跟踪。”
当我添加变更跟踪代码时
public partial class ProjectStatusDataContext
{
partial void UpdateRequest(Request instance)
{
bool tracking = ObjectTrackingEnabled;
ObjectTrackingEnabled = true;
RequestRevision rv = new RequestRevision(Requests.GetOriginalEntityState(instance));
//instance.RequestRevisions.Add(rv); --not working
this.ExecuteDynamicInsert(rv);
//this.RequestRevisions.InsertOnSubmit(rv); -- not working
ObjectTrackingEnabled = tracking;
this.ExecuteDynamicUpdate(instance);
}
}
现在,我遇到一个错误:“从查询返回结果后,无法修改数据上下文选项。”