如果在使用EF进行数据库操作时记录数据库操作日志
为了便于开发、测试、生产环境中可以快速的排查数据库相关问题,我们在使用EF进行数据库操作的时候可以记录日志,有两种方式可以记录日志:
一、在配置文件中配置
<entityFramework> <interceptors> <interceptor type="System.Data.Entity.Infrastructure.Interception.DatabaseLogger, EntityFramework"> <parameters> <parameter value="E:\log.txt" /> <parameter value="true" type="System.Boolean" /> </parameters> </interceptor> </interceptors> </entityFramework>
二、可以在自定义的DbContext中记录日志
public class TestDbContext : DbContext { public TestDbContext() : base() { this.Configuration.LazyLoadingEnabled = false; this.Configuration.ProxyCreationEnabled = false; Database.Log = Log; } protected override void OnModelCreating(DbModelBuilder modelBuilder) { Database.SetInitializer<TestDbContext>(null); base.OnModelCreating(modelBuilder); } private void Log(string log) { Console.WriteLine(log); } public DbSet<LouPan> LouPan { get; set; } }
浙公网安备 33010602011771号