Web服务调用的同步性

时间:2010-07-29 08:44:04

标签: c# asp.net web-services synchronization sync

默认情况下,Web服务调用是同步还是异步?如何通过服务或客户确定同步性?

我的代码类似于以下内容:

try
{
    string result = MakeWebServiceCall_1(); // this is a third party webservice
    MakeWebServiceCall_2(result); // another webservice which must happen *after* the first one is complete
}
catch()
{
    SetStatus(Status.Error); // this calls my own stored procedure
    throw;
}
SetStatus(Status.Sucess);

在上文中,SetStatus正在写入第三方Web服务从中读取的相同表。如果我在两个Web服务调用完成之前更改状态,它将会变得很乱,我将被解雇。我如何知道/确保webservice调用是同步的?

1 个答案:

答案 0 :(得分:2)

根据MSDN,当您添加对Web Service的引用时,它将实现在代理类中同步和异步调用Web Service的方法。你只需要确保拨打正确的电话。

使用“添加Web引用”对话框找到要供应用程序访问的XML Web服务后,单击“添加引用”按钮将指示Visual Studio将服务描述下载到本地计算机,然后生成所选XML Web服务的代理类。代理类将包含用于调用每个公开的XML Web服务方法的方法,同步异步 Source

相关问题