如何在ASP.NET Web应用程序中显示错误消息

时间:2009-03-16 19:00:04

标签: c# asp.net custom-errors

我有一个ASP.NET Web应用程序,我想知道在抛出异常时如何显示错误消息框。

例如,

    try
    {
        do something
    }
    catch 
    {
        messagebox.write("error"); 
        //[This isn't the correct syntax, just what I want to achieve]
    }

[消息框显示错误]

谢谢

重复 How to display an error message box in a web application asp.net c#

3 个答案:

答案 0 :(得分:8)

大概你可以这样做:

try
{
    //do something
}
catch (Exception ex)
{
    string script = "<script>alert('" + ex.Message + "');</script>";
    if (!Page.IsStartupScriptRegistered("myErrorScript"))
    {
         Page.ClientScript.RegisterStartupScript("myErrorScript", script);
    }
}

但我建议您定义自定义Exception并将其丢弃到您需要的任何位置。在您的页面上捕获此自定义异常并注册您的消息框脚本。

答案 1 :(得分:3)

ASP.Net中的错误保存在Server.GetLastError属性

或者我会在asp.net页面上放置一个标签来显示错误。

try
{
    do something
}
catch (YourException ex)
{
    errorLabel.Text = ex.Message;
    errorLabel.Visible = true;
}

答案 2 :(得分:3)

如果在回发期间发生异常,您只需要一个可以设置文本的控件和一个UpdatePanel。

如果在回发期间发生: 标记:

<ajax:UpdatePanel id="ErrorUpdatePanel" runat="server" UpdateMode="Coditional">
<ContentTemplate>
<asp:TextBox id="ErrorTextBox" runat="server" />
</ContentTemplate>
</ajax:UpdatePanel>

代码:

try
{
do something
}

catch(YourException ex)
{
this.ErrorTextBox.Text = ex.Message;
this.ErrorUpdatePanel.Update();
}