gpt4 book ai didi

asp.net - 如何向服务调用完成时调用的代码隐藏注册回调?

转载 作者:行者123 更新时间:2023-11-28 02:54:27 25 4
gpt4 key购买 nike

我正在使用带有 ASP 页面的 Web 服务。我想将这里发生的大部分事情保留在服务上,但我需要从代码隐藏中调用一个函数。我该如何做到这一点并保持异步。?

如何向服务调用完成时调用的代码隐藏注册回调?

谢谢!!

编辑:额外信息:我使用 jQuery 库中的 $.ajax 调用 asmx Web 服务。我想避免太多更改,但我的最终结果必须是从服务调用函数,并在完成后调用代码隐藏函数,所有这些都尽可能异步。

                $.ajax({
type: "POST",
url: "WebService.asmx/InsertClient",
contentType: "application/json; charset=utf-8",
data: insertdata,
dataType: "json",
success: function (msg) {
pkey = msg.d;
inserted();
return false;
},
error: function (msg) {
alert(msg.status + msg);
return false;
}

});

所有这些都正确发生并且一切正常,但我只是在尝试对代码隐藏进行异步调用时遇到问题 - 因为我需要更新下拉列表以刷新其数据源 - 如此处我刚刚添加了一个新条目。

最佳答案

如果您从 JS 调用 Web 服务,您可以在 JS 中连接 OnSuccess 事件,然后从 Javascript 对您的页面执行 __doPostback。

示例:

`函数 testCall() { WebServiceProxy.GetDocuments(param01, this.onSucceed, this.onFailure);}

函数onSucceed(结果){ //如果结果没问题 __doPostback(clientID, 参数);}

函数onFailure(结果){}`

在 asp Page/UserControl 中,您需要实现 IPostBackEventHandler。例如这样:

    public void RaisePostBackEvent( string eventArgument )
{
switch( eventArgument )
{
case "CallComplete":
OnWebServiceCompleted( new WebServiceCompletedEventArgs( value1 ) );

break;
default:
break;
}
}

关于asp.net - 如何向服务调用完成时调用的代码隐藏注册回调?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3014797/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com