.net WCF日志:为什么没有为TraceListener调用Close?
我正在尝试在传输级别将邮件记录到我的WCF服务。我已经成功地遵循了在网上找到的一些说明,但是现在我想实现我自己的跟踪侦听器,它支持我们的内部日志解决方案 我已经实现了一个跟踪侦听器,并使用承载WCF服务的windows服务的app.config对其进行了配置。下面是我用来配置日志记录的XML.net WCF日志:为什么没有为TraceListener调用Close?,.net,wcf,logging,tracelistener,.net,Wcf,Logging,Tracelistener,我正在尝试在传输级别将邮件记录到我的WCF服务。我已经成功地遵循了在网上找到的一些说明,但是现在我想实现我自己的跟踪侦听器,它支持我们的内部日志解决方案 我已经实现了一个跟踪侦听器,并使用承载WCF服务的windows服务的app.config对其进行了配置。下面是我用来配置日志记录的XML <system.diagnostics> <sources> <source name="System.ServiceModel.MessageLogging"&g
<system.diagnostics>
<sources>
<source name="System.ServiceModel.MessageLogging">
<listeners>
<add name="messages" type="my.namespace.AdvancedLogTraceListener, Tools.Logging, Version=2.0.3.1, Culture=neutral" initializeData="C:\Logs" />
</listeners>
</source>
</sources>
</system.diagnostics>
...
<diagnostics>
<messageLogging logEntireMessage="true" logMalformedMessages="false" logMessagesAtServiceLevel="false" logMessagesAtTransportLevel="true">
</messageLogging>
</diagnostics>
只是它不起作用。TraceListener的Close方法似乎没有被调用。我该怎么做才能确保在承载WCF服务的应用程序关闭时调用Close方法?请不要介意,我找到了另一个实现消息检查器的解决方案。请在此处详细介绍该解决方案,以便我们其他人可以了解您是如何解决问题的?
public override void Close()
{
base.Close();
this.logFile.Close();
}