我正在使用带有c#的asp.net并使用更新pannel以及flash控件我有时会收到错误而不是所有时间都没有页面导航然后plz帮助我
以下是弹出窗口中的大量文件: -
“Sys.WebForms.PageRequestManagerServerErrorException:在服务器上处理请求时发生未知错误。从服务器返回的状态代码为:0”
请帮助我在演示时可能会申请加入
答案 0 :(得分:5)
我记得的是,在我的情况下,当点击日历控件并将其回发到文本框中的填充值时,会出现此错误。此日历控件位于UpdatePanel中。在此日历控件回发期间,如果我单击一个不在UpdatePanel中的按钮(并导致页面回发),则会发生此错误。
你可以这样说: http://msdn.microsoft.com/en-us/library/bb398934.aspx
通过添加此脚本,您可以避免显示错误。
<script type="text/javascript" language="javascript">
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
function EndRequestHandler(sender, args) {
if (args.get_error() != undefined) {
var errorMessage;
if (args.get_response().get_statusCode() == '200') {
errorMessage = args.get_error().message;
}
else {
// Error occurred somewhere other than the server page.
errorMessage = 'An unspecified error occurred. ';
}
args.set_errorHandled(true);
}
}
</script>
答案 1 :(得分:3)
错误0表示没有错误。我不知道它为什么会发生,但是当它发生时,我只是将错误标记为已处理而没有任何事情发生。只需添加以下JavaScript,您的麻烦就会消失。
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<script type="text/javascript" >
(function() {
var prm = Sys.WebForms.PageRequestManager.getInstance();
if (prm)
{
prm.add_endRequest(
function (sender, args) {
// Any code you want here
if(args.get_error() && args.get_error().name === 'Sys.WebForms.PageRequestManagerServerErrorException')
{
args.set_errorHandled(args._error.httpStatusCode == 0);
}
});
}
})();
</script>
</form>
</body>
</html>
答案 2 :(得分:0)
我设法使用转发器生成类似的错误,转发器使用交替行,其中一个控件从交替样式中丢失。例如,'Literal1'在<ItemTemplate>
中定义,但未在<AlternatingItemTemplate>
中定义。我意识到这个问题已经得到了回答,但希望这可以节省一些调试时间。