我在使用 ElmahR 和设置persistorType 时遇到问题。如果没有将persistoryType elmah 日志完美地设置为elmahR,错误就会显示在仪表板上。当我想添加persistorType时出现问题。当我按如下方式添加持久性类型时:
<elmahr persistorType="ElmahR.Persistence.EntityFramework.EF4.EntityFrameworkPersistor, ElmahR">
它给了我以下错误:
加载资源失败:服务器响应状态为 500(内部服务器错误)。
Server Error in '/' Application.
Value cannot be null.
Parameter name: s
[ArgumentNullException: Value cannot be null.
Parameter name: s]
System.IO.StringReader..ctor(String s) +12159044
Microsoft.AspNet.SignalR.Json.JsonSerializerExtensions.Parse(IJsonSerializer serializer, String json) +139
Microsoft.AspNet.SignalR.Hubs.HubRequestParser.Parse(String data) +101
Microsoft.AspNet.SignalR.Hubs.HubDispatcher.OnReceived(IRequest request, String connectionId, String data) +127
Microsoft.AspNet.SignalR.<>c__DisplayClassc.<ProcessRequest>b__7() +96
Microsoft.AspNet.SignalR.TaskAsyncHelper.FromMethod(Func`1 func) +61
[AggregateException: One or more errors occurred.]
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() +26
Microsoft.Owin.Host.SystemWeb.Infrastructure.ErrorState.Rethrow() +33
Microsoft.Owin.Host.SystemWeb.CallContextAsyncResult.End(IAsyncResult result) +155
Microsoft.Owin.Host.SystemWeb.OwinHttpHandler.EndProcessRequest(IAsyncResult result) +34
System.Web.CallHandlerExecutionStep.OnAsyncHandlerCompletion(IAsyncResult ar) +129
我正在使用以下内容:
- MVC 项目
- SQL 服务器
- 实体框架 4.3.1
- ElmahR.Persistence.EntityFramework.EF4
使用 nuget 安装 ElmahR.Persistence.EntityFramework.EF4
我的 ErrorLogContext 连接字符串:
<add name="ErrorLogContext" connectionString="Server=.\SQLEXPRESS;Database=ElmahR;Integrated Security=true" providerName="System.Data.SqlClient"/>
- - - - - 更新
第 1 步:创建 mvc 4 项目。
第二步:使用nuget安装dashboard
第 3 步:设置 webconfig 并链接其他项目
第四步:重定向主页到dashboard.cshtml
到目前为止,仪表板很好地获取项目错误并显示它们
第 5 步:使用 nuget 安装 ElmahR.Persistence.EntityFramework.EF4
第 6 步:创建一个空数据库。并如上图设置连接字符串
它仍然在仪表板上记录错误,但不会在数据库中创建表,并且仍然使用内存中的表。所以刷新时我会丢失数据。
第 7 步:在 web config 中添加persistorType 标签,如上图所示
现在我收到了我发布的错误。
关于这里做错了什么的任何建议?