Silverlight 中引发的异常存储在数据库中。请查看文档如何配置 Silverlight 异常处理。
您可以在项目文件夹“Vinco.Elmah.Everywhere\Source\ErrorWebSite\App_Data\Elmah.Everywhere.mdf”中找到数据库</p>
将此数据库附加到您的 MS SQL Server。
Elmah.Everywhere 代码库最近更新了新功能和更好的示例。
请尝试运行示例,然后浏览记录的错误
网址:http://localhost:11079/elmah
注意:Elmah.Everywhere 日志旨在将错误记录到远程站点。要获得 Elmah.Everywhere 日志的全部好处,请创建一个网站或使用将记录错误的示例中的现有“ErrorWebSite”。这允许您拥有多个将错误记录到中央数据库的项目。只需更改 ExceptionDefaults 中的 ApplicationName 即可区分不同的项目。
Silverlight 配置示例
您可以按照以下示例中的说明配置错误日志记录。
private static void SetUpExceptionHandler()
{
Uri uri = Application.Current.Host.Source;
string currentHost = string.Format("{0}{1}{2}:{3}", uri.Scheme, Uri.SchemeDelimiter, uri.Host, uri.Port);
// Configure
var writter = new ClientHttpExceptionWritter
{
// NOTE: Possible to pass URI by startup arguments.
RequestUri = new Uri(string.Format("{0}/error/log", currentHost), UriKind.Absolute)
};
var defaults = new ExceptionDefaults
{
Token = "Silverlight-Test-Token",
ApplicationName = "Silverlight-Sample",
Host = string.Format("{0}{1}{2}:{3}", uri.Scheme, Uri.SchemeDelimiter, uri.Host, uri.Port)
};
ExceptionHandler.Configure(writter, defaults);
}
在 Application 构造函数中调用处理程序设置方法。
public App()
{
SetUpExceptionHandler();
}
将处理程序日志添加到 Application_UnhandledException 方法中
private void Application_UnhandledException(object sender, ApplicationUnhandledExceptionEventArgs e)
{
ExceptionHandler.Report(e.ExceptionObject, null);
}
此配置将针对 Silverlight 主机 URL 记录错误。确保您在 bin 文件夹中有 Elmah.Everywhere.dll、Elmah.dll 以及 Web.config 文件中的配置详细信息。
要查看浏览器中的错误,请参阅“ErrorWebSite”示例。URL 应如下所示。http://yourdomain.com/elmah
有关更多信息,请参阅提供的样本。