private async Task <TResult> DbExecProxyAsync <TResult>(Func <DynamicParameters, Task <TResult> > func, string sql, DynamicParameters parameters = null) { string message; parameters = parameters ?? new DynamicParameters(); try { timer.Restart();//开始计算时间 var tsv = await func(parameters); timer.Stop();//结束点 message = $"SQL语句为:{sql},{Environment.NewLine}参数:{(parameters != null ? parameters.ToString() : "")}"; message += $"{Environment.NewLine}执行时间:{ timer.ElapsedMilliseconds}毫秒"; _logger.LogTrace(message); return(tsv); } catch (Exception ex) { message = $"查询SQL异常:{ ex.Message },{Environment.NewLine}SQL语句为:{sql}{Environment.NewLine}参数:{(parameters != null ? parameters.ToString() : "")}"; _logger.LogError(message); throw new FapException(message, ex); } }