///<inheritdoc/> public PerformanceCommandReport Analyze(DbCommand command, TimeSpan executionTime) { var regex = new Regex(UNPARAMETRIZED_WHERE_CLAUSE_REGEX_PATTERN, RegexOptions.Compiled | RegexOptions.Multiline); foreach (Match m in regex.Matches(command.CommandText)) { if (m.Success) { var value = m.Groups[1].Value; var columnName = m.Groups[2].Value; if (!String.IsNullOrWhiteSpace(value) && !String.IsNullOrWhiteSpace(columnName) && value.IndexOf('@') == -1) { var report = new PerformanceCommandReport(command, Strings.UnparametrizedWhereClause(command.CommandText), PerformanceCommandReportCategory.Warning); return(report); } } } return(null); }
///<inheritdoc/> public PerformanceCommandReport Analyze(DbCommand command, TimeSpan executionTime) { var regex = new Regex(UNPARAMETRIZED_SKIP_TAKE_PATTERN, RegexOptions.Compiled | RegexOptions.Multiline); var match = regex.Match(command.CommandText); if (match.Success) { var report = new PerformanceCommandReport(command, Strings.UnparametrizedSkipOrTake(command.CommandText), PerformanceCommandReportCategory.Warning); return(report); } return(null); }