Optimized code

This commit is contained in:
sunkaixuan
2023-08-12 16:19:45 +08:00
parent 83dd767962
commit 06470a4a22
2 changed files with 13 additions and 5 deletions

View File

@@ -678,11 +678,7 @@ namespace SqlSugar
var whereSql = Regex.Replace(sql, ".* WHERE ", "", RegexOptions.Singleline); var whereSql = Regex.Replace(sql, ".* WHERE ", "", RegexOptions.Singleline);
if (IsExists(sql)) if (IsExists(sql))
{ {
whereSql = Regex.Match(sql, @"\(EXISTS.+").Value; whereSql = UtilMethods.RemoveBeforeFirstWhere(sql);
if (sql.Contains("((EXISTS"))
{
whereSql = $"({whereSql}";
}
} }
dt = this.Context.Queryable<T>().Filter(null, true).Where(whereSql).AddParameters(parameters).ToDataTable(); dt = this.Context.Queryable<T>().Filter(null, true).Where(whereSql).AddParameters(parameters).ToDataTable();
} }

View File

@@ -18,6 +18,18 @@ namespace SqlSugar
{ {
public class UtilMethods public class UtilMethods
{ {
public static string RemoveBeforeFirstWhere(string query)
{
int whereIndex = query.IndexOf("WHERE", StringComparison.OrdinalIgnoreCase);
if (whereIndex >= 0)
{
return query.Substring(whereIndex + "WHERE".Length);
}
else
{
return query;
}
}
public static List<object> ConvertToListOfObjects(object inValues) public static List<object> ConvertToListOfObjects(object inValues)
{ {
// 创建一个新的List<object>并逐个将元素转换并添加到其中 // 创建一个新的List<object>并逐个将元素转换并添加到其中