/// <summary> /// 记录 Sql 执行过程。 /// /// 把 SQL 语句及参数,写到 SQL_TRACE_FILE 配置所对应的文件中。 /// </summary> /// <param name="sql"></param> /// <param name="parameters"></param> /// <param name="connectionSchema"></param> public override void LogDbAccessed(string sql, IDbDataParameter[] parameters, DbConnectionSchema connectionSchema) { if (_sqlTraceFile == null) { _sqlTraceFile = ConfigurationHelper.GetAppSettingOrDefault("SQL_TRACE_FILE", string.Empty); } if (_sqlTraceFile.Length > 0) { var content = sql; if (parameters.Length > 0) { var pValues = parameters.Select(p => { var value = p.Value; if (value is string) { value = '"' + value.ToString() + '"'; } return value; }); content += Environment.NewLine + "Parameters:" + string.Join(",", pValues); } content = DateTime.Now + Environment.NewLine + "Database: " + connectionSchema.Database + Environment.NewLine + content + "\r\n\r\n\r\n"; AppendAllText(_sqlTraceFile, content); } }
public override void LogDbAccessed(string sql, IDbDataParameter[] parameters, DbConnectionSchema connectionSchema) { var content = sql; if (parameters.Length > 0) { var pValues = parameters.Select(p => { var value = p.Value; if (value is string) value = '"' + value.ToString() + '"'; return value; }); content += Environment.NewLine + "Parameters:" + string.Join(",", pValues); } content = DateTime.Now + "\r\nDatabase: " + connectionSchema.Database + "\r\n" + content + "\r\n\r\n\r\n"; TraceMessage(content); }