2013-04-03 104 views
0
var lockClient = new ServiceReference1.LockSoapClient(); 
lockClient.AcquireLockAsync(); 

bool status=true; 
lockClient.AcquireLockCompleted += (s, e1) => 
{ 
    status = e1.Result; 
}; 

sendStat(status); 

我想通过在boolean true/false我在sendStat从e.Result直接获得()方法。例如sendStat(e1.Result)我不想在lockClient.AcquireLockCompleted部分中调用此方法。我该怎么做?Silverlight的Web服务调用方法direcly

真实的例子

Brush brush = GetPolygonFill(vectorPolygon, false, Settings.LightSourcePosition, adjust); 

Settings.LightSourcePosition

部分需要来自web服务

+0

'我不想在lockClient.AcquireLockCompleted节中调用这个方法。“为什么不呢? –

+1

我同意@迈克尔becouse服务调用是异步,所以这不是我们的控制 –

+1

同样在这里,为什么不,你需要一个异步过程为你的回调,这是什么问题? – Ouarzy

回答

1

有没有办法来完成的方法,因为异步调用的那个之外。完成方法内的任何内容都会保证在您获得异步调用结果后执行。