当前位置: 移动技术网 > IT编程>开发语言>c# > EF SaveChanges重写加入日志

EF SaveChanges重写加入日志

2020年05月09日  | 移动技术网IT编程  | 我要评论
 public override int savechanges()
        {
            var entries = changetracker.entries().where(x => x.state != entitystate.unchanged).groupby(x => new { x.state, x.entity.gettype().name }).select(x => new { x.key.state, x.key.name, list = x.tolist() });
            jsonserializersettings settings = new jsonserializersettings
            {
                referenceloophandling = referenceloophandling.ignore// 发现循环引用时跳过序列化
            };
            foreach (var item in entries)
            {
                        logger.writeoperationlog($"\r\n operation {item.state} date:{datetime.now.tostring("yyyy-mm-dd hh:mm:ss")}\r\n entity:{item.name}\r\n data:{jsonconvert.serializeobject(item.list.select(x => x.entity).tolist(), settings)}", "default");

            }

            return base.savechanges();
        }

 

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网