Linq to sql 如何处理必须通过web服务进行的Linq到Sql插入/更新?

Linq to sql 如何处理必须通过web服务进行的Linq到Sql插入/更新?,linq-to-sql,Linq To Sql,我正在编写一个位于第三方应用程序之上的web应用程序。我们可以将对象插入到第三方数据库中的唯一受支持的方法是将数据插入到通用的“暂存表”中,然后调用web服务通过其业务逻辑进行处理 问题是这可能相当缓慢 我知道在Linq中,我可以为每个类提供一个Insert*方法,然后处理单个Insert。问题是Insert*方法是针对每个对象单独调用的,这意味着我们在多次调用web服务时会出现延迟。在处理关联时,这是一个更大的问题,因为我们必须确保以正确的顺序插入关联,并且每个关联在插入后都用主键更新L2SQ

我正在编写一个位于第三方应用程序之上的web应用程序。我们可以将对象插入到第三方数据库中的唯一受支持的方法是将数据插入到通用的“暂存表”中,然后调用web服务通过其业务逻辑进行处理

问题是这可能相当缓慢

我知道在Linq中,我可以为每个类提供一个Insert*方法,然后处理单个Insert。问题是Insert*方法是针对每个对象单独调用的,这意味着我们在多次调用web服务时会出现延迟。在处理关联时,这是一个更大的问题,因为我们必须确保以正确的顺序插入关联,并且每个关联在插入后都用主键更新L2SQL对象。对于可能意味着使用此方法通过web服务进行六次往返的复杂对象!:(

现在,web服务本身实际上将一次处理多个事务。因此,理想情况下,我可以将一个对象及其所有关联对象插入staging表,调用web服务一次,并在最后获取所有主键


有人知道在Linq to Sql中实现这一点的方法吗?

您不能编写自己的
SubmitChangesToRemote()
方法来调用
SubmitChanges()
并调用web服务?我不明白这有什么帮助…问题是SubmitChanges将调用每个单独的insert,并期望每个调用实际执行insert并刷新需要的任何数据。我的意思是,您不在
insert
中向远程服务发送任何信号,而是排队等待em启动并让
SubmitChangesToRemote()
对所有条目发送一次信号
SubmitChanges()
返回。当然,我可能完全误解了这个问题。那么SubmitChanges如何将关联联系在一起?主键在调用SubmitChangesToRemote之后才存在。我基本上需要重新实现SubmitChanges。。。