0

我创建了许多用于各种 MS 系统的 Silverlight 应用程序,从 CRM 2011 到 SharePoint。

应用程序并不完美,我会第一个承认这一点,有时会出错。我所有的应用程序都已经显示出了问题:

    private void Application_UnhandledException(object sender, ApplicationUnhandledExceptionEventArgs e)
    {
        (...)
            UIDispatcher.Invoke(() => ARP.DynamicsCRM2011.Silverlight.GlobalHelper.Controls.MessageWindow.ShowMessage(e.ExceptionObject.Message));
        (...)
    }

但是,最终用户几乎总是不会安装 Silverlight 开发人员 SDK,并且随后只会收到一般的“调试资源字符串不可用”消息。

该消息通常会包含一些非常基本的异常形式,但这并不理想。我也知道我从错误中丢失了正确的堆栈跟踪(这当然很容易修复)。

我正在考虑重写该异常处理代码以显示通用的“出现问题,请重试消息”,以及一个额外的“显示日志”按钮以显示所有异常信息以及堆栈跟踪。

然而,我的问题是......我应该如何处理那些丢失的资源字符串?如果出现问题,我希望获得尽可能多的信息,但我不能要求我的用户都安装开发者 SDK。

在这种情况下,最好的行动方案是什么?

4

1 回答 1

1

我不知道这是否适合您,但您可以将这些信息记录在数据库或本地文件中,以便在出现错误时检索。但我不知道这是否是您可以考虑的(例如:应用程序适用于您的公司但不公开等)

于 2013-04-12T13:22:51.213 回答