我们有一个使用AjaxToolKit / C#/ .NET异步保存的按钮。我在错误控制台中收到了这个:
Error: [Exception... "'Sys.WebForms.PageRequestManagerServerErrorException: Sys.WebForms.PageRequestManagerServerErrorException:
An unknown error occurred while processing the request on the server. The status code returned from the server was: 500' when calling method:
[nsIDOMEventListener::handleEvent]" nsresult: "0x8057001c (NS_ERROR_XPC_JS_THREW_JS_OBJECT)" location: "<unknown>" data: no]
最奇怪的是,它只发生在某些机器上(但不是全部)。办公室里的每个人都在FF 3.0.4和IE 7中检查了这一点,并且保存对大多数人来说都很好。对于少数不适用的人来说,它在两种浏览器中都失败了。
有关从何处开始排除故障的任何想法?
应用程序正常工作,直到本周末的更新,我们更新了页面上的UserControl。如果我删除该控件,则保存在所有计算机上都能正常工作。当我添加控件时,我们遇到上述情况,它在随机计算机上失败。
答案
不幸的是,由于AjaxToolKit返回错误的神秘性,这很难追查。真正的罪魁祸首是UserControl中的某些字段中存在HTML。我们在页面顶部添加了ValidateRequest =“false”,我们的问题就消失了。
我们最终发现问题的方法是从我们的保存按钮周围删除UpdatePanel 。
对不起,我没有早点想到这一点,因为那里非常简单。我正在给迈克尔他的辛勤工作和详尽的故障排除清单。
答案 0 :(得分:2)
要检查的事项:
在这种情况下,我可能会下载一个处女浏览器来尝试排除浏览器设置。我将谷歌浏览器扔到已知良好的机器和已知的坏机器上,看看会发生什么。如果它在两种情况下都有效,那么我会进一步研究浏览器设置。我知道这不太可能,因为它在FF和IE中都失败了,但IE这个简单的测试可以帮助提供更多的信息。
这是一个奇怪的。由于它同时影响IE和FF,我还会查看连接角度,主机文件和权限。
答案 1 :(得分:0)
这不是Ajax的错误,在某处你的代码有错误。删除Ajax然后检查,你会知道什么是确切的错误。
阿吉特