我在一个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中建立回调函数,您可以使用jQuery ajax或PageMethods调用
这两个选项将单独运行,一旦Web方法完成执行,将返回,无论是成功还是失败回调
JavaScript中的PageMethods
https://www.codeproject.com/Questions/631342/Calling-csharp-function-in-javascript