WebMethod返回一个值并在vb.net中调用其他方法

时间:2009-08-18 17:30:01

标签: xml vb.net

我有一个带有一个WebMethod的Web服务,其返回值是boolean。

它接受XML文件作为字符串和处理数据。我怎样才能首先将状态返回true,然后调用ProcessData方法。

由于处理数据需要时间,我需要先返回true然后处理数据。

请帮忙。

[webmethod]
Public function receiveData(ByVal xmlstr as string) as boolean
dim status as boolean=false
try
  if xmlstr<>"" then
      ProcessData(xmlstr)
     status=true
  end if

catch

end try
return status
end function

2 个答案:

答案 0 :(得分:1)

如果我理解正确,那么您尝试实现的目标是在ProcessData工作时快速响应用户。

我正在处理类似情况。我做的是创建另一个webmethod(或我的情况下的另一个通用处理程序)并使用Async request

调用它

这样我就可以单独使用它而无需额外的线程工作。

答案 1 :(得分:0)

我能看到的唯一方法是在另一个线程上调用ProcessData。当然,多线程很容易出错,在使用它之前你需要先理解它,所以我不打算发布一个代码片段,但是请指出几个地方开始:

http://msdn.microsoft.com/en-us/library/system.threading.thread.aspx

http://www.yoda.arachsys.com/csharp/threads/