GetGlobalResourceObject异常处理

时间:2009-10-16 17:37:10

标签: c#

我有一个项目,它广泛使用GetGlobalResourceObject,它是System.Web.UI类的成员。它可以很好地为双语C#/ ASP.NET应用程序提供英语或法语标签。

但....如果资源文件中的引用丢失或格式错误,应用程序崩溃

有数百个这样的电话

GetGlobalResourceObject(“XXX.WebResource”,“删除”)

有没有办法用一个异常处理程序封装GetGlobalResourceObject,以便它返回null并在没有为每次调用添加try / catch时出现问题时记录它?

我是C#的新手,所以我不知道我是否可以用自己的类覆盖GetGlobalResourceObject,然后进行搜索和替换。当然有更好的方法。

Kevinsky

1 个答案:

答案 0 :(得分:2)

您可以编写自己的GetGlobalResourceObject版本来嵌入异常处理并登录:

public static Object MyGetGlobalResourceObject (string classKey,
                                                string resourceKey)
{
    try
    {
        return GetGlobalResourceObject (classKey, resourceKey);
    }
    catch (MissingManifestResourceException ex)
    {
        // log error
        return null;
    }
}

此代码作为起点提供

您甚至可以在HttpContext上将其作为扩展方法编写。

你必须进行全局搜索并替换以调用它而不是基本方法,这不是最优雅的解决方案,但它会起作用。