如何为Entity Framework中的拦截器生成的日志设置文件大小?
<interceptor type="System.Data.Entity.Infrastructure.Interception.DatabaseLogger, EntityFramework">
<parameters>
<parameter value="LogOutput.txt"/>
<parameter value="true" type="System.Boolean"/>
</parameters>
</interceptor>
我想创建指定大小的日志文件,当该大小达到时,它开始创建另一个日志文件。而不是继续将日志写入同一个文件
答案 0 :(得分:1)
你不能,因为DatabaseLogger类只是没有这样的选项。但是,这个类非常简单,这是它的源代码:http://entityframework.codeplex.com/SourceControl/latest#src/EntityFramework/Infrastructure/Interception/DatabaseLogger.cs
加载时,它只使用DatabaseLogFormatter功能,只需将格式化程序提供给单个文件即可。您可以实现自己的拦截器,但可以登录到不同的文件。您甚至可以使用已有的解决方案(如log4net)为您执行此操作。然后在您的拦截器中,您只需登录到log4net,它就会为您管理文件。