使用支持Javascript的WCF处理错误?

时间:2010-12-02 18:56:26

标签: javascript ajax wcf microsoft-ajax wcf-callbacks

是否有关于如何在暴露于Javascript的WCF服务中使用回调函数的文档?我有兴趣从FailureCallback获取有关为什么我的方法没有触发的信息。

换句话说,我有以下JavaScript代码:

     function getWCF_RowNumber(parentID) {
              logEvent("<strong>Busy</strong>: Please wait while lower grid is refreshed...");                  
              var service = new ajaxTest();
              service.Vendor_GetParentRowNumber(parentID, moveBottomGridToRow, wcfFailCallback, null);
          }

如何实现wcfFailCallback?

1 个答案:

答案 0 :(得分:4)

我假设您使用的是ASP.NET AJAX,而不是jQuery或其他第三方JavaScript库。

ASP.NET AJAX故障回调只接受一个参数。从MSDN,示例故障回调将如下所示:

function wcfFailCallback(error)
{
    var stackTrace = error.get_stackTrace();
    var message = error.get_message();
    var statusCode = error.get_statusCode();
    var exceptionType = error.get_exceptionType();
    var timedout = error.get_timedOut();

    // Display the error.    
    var RsltElem = 
        document.getElementById("Results");
    RsltElem.innerHTML = 
        "Stack Trace: " +  stackTrace + "<br/>" +
        "Service Error: " + message + "<br/>" +
        "Status Code: " + statusCode + "<br/>" +
        "Exception Type: " + exceptionType + "<br/>" +
        "Timedout: " + timedout;
}

因此wcfFailCallback函数采用error参数,该参数具有许多属性,可为您提供有关失败的信息。

MSDN上的完整文章是here。它详细介绍了如何将WCF服务连接到ASP.NET AJAX客户端。

我希望这有帮助!!如果还有其他问题,或者我没有完全理解您的问题,请告诉我,我会相应更新我的答案。