如何通过Javascipt回调处理耗时的Web服务操作

问题描述 投票:0回答:1

我在一个Web应用程序中执行以下操作。我有一个返回值的函数。该值应该传递给Web服务方法,该方法separate运行到我的Web应用程序。此Web服务操作需要一些时间才能完成,因此必须在后台运行,并且在完成后应返回一条消息。我想通过Javascript回调做到这一点。代码的基本流程如下;

 Dim shr_intfB_Common_LCI As clsCreamsCommon
 Dim stringResult As StringResult
 shr_intfB_Common_LCI = New clsCreamsCommon
 Call shr_intfB_Common_LCI.CreamsBooking(clsTapsCreamsPropsDtl,
                               intRetCode, strMessage, intRequestId
                               )

// This intRequestId needs to be passed to the following web service.
Do
   Threading.Thread.Sleep(10 * 1000) '10 Second
   stringResult = objService.CheckRequestStatus(objServiceUser, intRequestId)
   Loop Until stringResult Is Nothing Or stringResult.ReturnCode <> 2    

//The stringResult includes the followings which I have to display. 
MessageBox(Me, stringResult.ReturnCode, stringResult.ReturnData + stringResult.ReturnMessage)

我想在不使用线程或任务的情况下执行此操作,因为这是Web应用程序,但是使用JavaScript回调。请帮帮我。

javascript asp.net ajax web-services
1个回答
0
投票

要在JavaScript中建立回调函数,您可以使用jQuery ajax或PageMethods调用

这两个选项将单独运行,一旦Web方法完成执行,将返回,无论是成功还是失败回调

JavaScript中的PageMethods

https://www.codeproject.com/Questions/631342/Calling-csharp-function-in-javascript

© www.soinside.com 2019 - 2024. All rights reserved.