企业库日志记录到数据库不起作用

本文关键字:数据库 不起作用 记录 日志 企业库 | 更新日期: 2023-09-27 17:57:16

我的配置中有以下内容:

<loggingConfiguration name="" tracingEnabled="true" defaultCategory="Exception Development">
        <listeners>
          <add name="Database Trace Listener"
               formatter="Text Formatter"
                traceoutputoptions="LogicalOperationStack, DateTime, 
                                      Timestamp, ProcessId, ThreadId, Callstack"
                databaseinstancename="LoggingConnectionString"
                writelogstoredprocname="WriteLog"
                addcategorystoredprocname="AddCategory"
                type="Microsoft.Practices.EnterpriseLibrary.Logging.Database.
                        FormattedDatabaseTraceListener, 
                        Microsoft.Practices.EnterpriseLibrary.Logging.Database, 
                        Version=5.0.505.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
                listenerdatatype="Microsoft.Practices.EnterpriseLibrary.Logging.
                                    Database.Configuration.FormattedDatabaseTraceListenerData, 
                                    Microsoft.Practices.EnterpriseLibrary.Logging.Database, 
                                   Version=5.0.505.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />

点击以下代码行时:ExceptionPolicy.HandleException(exception, policyName);

它引发以下异常:

Missing TraceListenerData type in configuration 'listenerdatatype="Microsoft.Practices.EnterpriseLibrary.Logging.Database.Configuration.FormattedDatabaseTraceListenerData,Microsoft.Practices.EnterpriseLibrary.Logging.Database, Version=5.0.505.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"'.

不太确定如何将异常记录到数据库中(我还没有完全创建任何在 writeLogStoredProcNameaddCategoryStorageProcName 中的存储过程(我想吗?我什至不知道应该放什么列)

我所有的 EnterpriseLibrary dll 都来自 EntLib 5.0。我可能做错了什么?(我甚至将它们包含在"引用"文件夹中。

编辑:
我已经包含了以下 dll:

Microsoft.实践.企业图书馆.通用;
Microsoft.实践.企业图书馆.数据;
Microsoft.Practices.EnterpriseLibrary.Data.SqlCe;
Microsoft.实践.企业库.日志记录;
Microsoft.实践.企业图书馆.日志记录.数据库;
Microsoft.实践.企业库.异常处理;
Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.Logging;

还是没有运气!!

企业库日志记录到数据库不起作用

看到该消息是因为 Microsoft.Practices.EnterpriseLibrary.Logging.Database.dll 程序集未部署到输出文件夹(bin 或 bin''debug|release)。 发生这种情况是因为程序集仅在配置中引用,Visual Studio 认为它不是必需的。 生成后命令可以部署程序集。