1

如果我有一个新对象,它不是 ADO.NET 中的 context.Saved(),除了另一个尚未保存的对象外,我如何区分它?

我将使用这些信息来确定如何处理我的自定义自动增量功能。如果对象已保存到数据库中,我将往返于数据库服务器。如果该对象尚未保存,那么我将在本地执行我的自动增量。

那么,给定 2 个 ADO.NET 对象,我如何判断它们是否已保存?

4

1 回答 1

0

假设您正在使用 WCF 数据服务(以前称为 ADO.NET 数据服务):在您的客户端中,您有一个派生自 DataServiceContext 的类的实例。在这个实例上,有一个 GetEntityDescriptor 方法,它接受一个实体实例作为参数。它返回一个具有 State 属性的 EntityDescriptor 对象。如果该属性已添加,则表示新添加的对象尚未保存到服务器。如果 State 属性处于任何其他状态,则意味着该对象已经发送到服务器(假设您没有使用一些高级的东西,例如调用 AttachTo)。

于 2010-09-19T18:01:19.067 回答