using OrmTest.Models; using SqlSugar; using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace OrmTest.Demo { public class Aop { public static void Init() { SqlSugarClient db = new SqlSugarClient(new ConnectionConfig() { InitKeyType=InitKeyType.Attribute,ConnectionString = Config.ConnectionString, DbType = DbType.Sqlite, IsAutoCloseConnection = true }); db.Aop.OnLogExecuted = (sql, pars) => { Console.Write("time:" + db.Ado.SqlExecutionTime.ToString()); }; db.Aop.OnLogExecuting = (sql, pars) => { }; db.Aop.OnError = (exp) => { }; db.Aop.OnExecutingChangeSql = (sql, pars) => { return new KeyValuePair(sql, pars); }; db.Queryable().ToList(); try { db.Queryable().AS(" ' ").ToList(); } catch (Exception) { } //diff log demo db.Aop.OnDiffLogEvent = it => { var editBeforeData = it.BeforeData; var editAfterData = it.AfterData; var sql = it.Sql; var parameter = it.Parameters; var data = it.BusinessData; var type = it.DiffType; var time = it.Time; }; var id = db.Insertable(new Student() { Name = "beforeName" }) .EnableDiffLogEvent(new { title="add student"}) .ExecuteReturnIdentity(); db.Updateable(new Student() { Id = id, CreateTime = DateTime.Now, Name = "afterName", SchoolId = 2 }) .EnableDiffLogEvent(new { title = "update Student", Modular = 1, Operator = "admin" }) .ExecuteCommand(); db.Deleteable(id) .EnableDiffLogEvent(new { title = "delete student" }) .ExecuteCommand(); //primary key guid db.Insertable(new DataTestInfo2() { Bool1=true, Bool2=false, PK=Guid.NewGuid(), Text1="a" }) .EnableDiffLogEvent(new { title = "add DataTestInfo2" }) .ExecuteReturnIdentity(); } } }