错误消息的中央页面

时间:2013-06-04 04:07:37

标签: c# asp.net error-handling

在我的ASP.NET C#应用程序中,我想显示许多不同的错误消息。

我显示错误消息的方式是通过以下方式:

       Page.ClientScript.RegisterStartupScript(GetType(), "msgbox", "alert('My error message here');", true);
        return;

由于存在许多不同的错误消息(一些在页面上重复)并且我的应用程序中有这么多不同的页面 - 我想将所有错误消息放在一个集中的页面上并以某种方式引用它 - 这样当我需要更改我的错误消息,我只需要在一个页面中进行更改,而不是在所有页面中进行更改。

最好的方法是什么?

我想我需要创建一个.cs页面?每个错误消息都有不同的ID。

这似乎是一件非常简单的事情,但我对如何开始它有点迷茫。

有人可以建议最好的方法吗?

感谢。

3 个答案:

答案 0 :(得分:6)

我会添加扩展方法来显示警报并将所有异常字符串保存在资源文件中。然后我可以调用下面的方法

<强> USAGE

this.ShowAlert(Resource1.MyException);

扩展方法

using System;
using System.Web.UI;

namespace WebApplication1
{
    public static class Extensions
    {
        public static void ShowAlert(this Control control, string message)
        {
            if (!control.Page.ClientScript.IsClientScriptBlockRegistered("msgbox"))
            {
                var script = String.Format("alert('{0}');", message);
                control.Page.ClientScript.RegisterStartupScript(control.Page.GetType(), "msgbox", script, true);
            }
        }
    }
}

将资源文件添加到项目中,并将消息输入为具有全名的字符串条目。

答案 1 :(得分:1)

由于您似乎显示JavaScript错误消息,我将创建一个JS包含文件并在那里定义JS方法。这样,您可以在包含JS文件的所有页面上重用这些方法。

https://softwareengineering.stackexchange.com/questions/91242/what-is-the-best-way-to-include-javascript-file-using-script-tag

答案 2 :(得分:0)

可以在中定义JS方法
*母版
*在所有页面继承的自定义基类中。