我有一个页面方法,我从我的 JavaScript 中调用它
说
Pagemethods.MyMethod(MyParameter, onsucess, onfailure);
在后面的代码中,我有这样的事情:
[WebMethod]
public static void MyMethod(Param)
{
try{
//DoSomething..
}
catch(exception ex)
{
//Log the exception and rethrow
throw new exception(ex.innerexception);
}
}
现在我面临的问题是:
每当我遇到异常时,
我从后面的代码中抛出异常
但是在 onfailure 方法中,我只收到一条通用消息说
“服务器方法 MyMethod 失败,错误如下:”
我似乎没有得到异常详细信息,只有那个通用异常,
我如何获取 JavaScript 的异常详细信息,以便根据 UI/JavaScript 端处理它。
我已经验证,这不是 web.config 中自定义错误设置的问题。
有人能告诉我这里发生了什么吗?
PS:我已经遍历了每一行代码,并且记录后的异常被重新抛出,并带有正确的异常详细信息,即消息。
最佳答案
据我了解,只要你有
<customErrors mode="off" />
在您的 web.config 中,该消息将返回给客户端。你确定你有这个设置?
要显示与错误相关的消息,您需要将函数的名称作为页面方法调用的第三个参数:此函数可以很简单:
function onfailure( result )
{
alert( result.get_message() );
}
这就是我们所拥有的并且运行正常
关于web-services - 从客户端上的 ASP.NET PageMethods 获取异常详细信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/964521/