(精华)2020年8月18日 ASP.NET Core Log4数据库日志扩展
发布日期:2021-06-29 15:10:16
浏览次数:3
分类:技术文章
本文共 2927 字,大约阅读时间需要 9 分钟。
public class CustomEFLogger : ILogger { private string _CategoryName = null; public CustomEFLogger(string categoryName) { this._CategoryName = categoryName; } public IDisposable BeginScope(TState state) { return null; } public bool IsEnabled(LogLevel logLevel) { return true; } public void Log (LogLevel logLevel, EventId eventId, TState state, Exception exception, Func formatter) { System.Diagnostics.Debug.WriteLine($"************************************************************"); System.Diagnostics.Debug.WriteLine($"CustomEFLogger {_CategoryName} {logLevel} {eventId} {state} start"); System.Diagnostics.Debug.WriteLine($"异常信息:{exception?.Message}"); System.Diagnostics.Debug.WriteLine($"信息:{formatter.Invoke(state, exception)}"); System.Diagnostics.Debug.WriteLine($"CustomEFLogger {_CategoryName} {logLevel} {eventId} {state} end"); System.Diagnostics.Debug.WriteLine($"************************************************************"); } }
public class CustomEFLoggerFactory : ILoggerFactory { public void AddProvider(ILoggerProvider provider) { } public ILogger CreateLogger(string categoryName) { return new CustomEFLogger(categoryName); } public void Dispose() { } }
////// 日志问题/// public partial class JDDbContext : DbContext{ public JDDbContext(DbContextOptionsoptions) : base(options) { Console.WriteLine("This is JDDbContext DbContextOptions"); } private IConfiguration _IConfiguration = null; private ILoggerFactory _iLoggerFactory = null; public JDDbContext(IConfiguration configuration, ILoggerFactory loggerFactory) { this._IConfiguration = configuration; this._iLoggerFactory = loggerFactory; Console.WriteLine("This is JDDbContext configuration loggerFactory"); } protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) { var builder = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile("appsettings.json"); var configuration = builder.Build(); var conn = configuration.GetConnectionString("JDDbConnection"); optionsBuilder.UseSqlServer(conn); optionsBuilder.UseLoggerFactory(new CustomEFLoggerFactory()); optionsBuilder.UseLoggerFactory(this._iLoggerFactory); optionsBuilder.UseSqlServer(this._IConfiguration.GetConnectionString("JDDbConnection")); optionsBuilder.UseSqlServer(StaticConstraint.JDDbConnection); optionsBuilder.UseSqlServer("Server=.;Database=advanced11;User id=sa;password=Passw0rd"); } }
转载地址:https://codeboy.blog.csdn.net/article/details/108080938 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
不错!
[***.144.177.141]2024年04月07日 20时36分39秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
JSON.parse和eval的区别
2019-04-29
JQuery中$.ajax()方法参数详解
2019-04-29
正则表达式的数字实例
2019-04-29
OGNL表达式struts2标签“%,#,$”的区别
2019-04-29
struts2中<s:if>标签的使用
2019-04-29
js 刷新页面window.location.reload();
2019-04-29
【转】EasyUI 验证
2019-04-29
java开发时内存溢出问题
2019-04-29
【easyui】combobox 关于省市联动
2019-04-29
设置csdn皮肤方法,更改自己喜欢的老版皮肤
2019-04-29
Eclipse中无法查看JDK源码,解决方法
2019-04-29
Git操作常用口令
2019-04-29
IDEA去除掉虚线,波浪线,和下划线实线的方法
2019-04-29
MYSQL新特性secure_file_priv 读写文件
2019-04-29
idea中的一些常用快捷键
2019-04-29
最值得拥有的免费Bootstrap后台管理模板
2019-04-29
Django获取请求头信息和返回json数据
2019-04-29