mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-09-19 10:08:19 +08:00
Update Core
This commit is contained in:
@@ -31,6 +31,9 @@ namespace SqlSugar
|
||||
public virtual string SqlParameterKeyWord { get { return "@"; } }
|
||||
public IDbTransaction Transaction { get; set; }
|
||||
public virtual SqlSugarClient Context { get; set; }
|
||||
internal CommandType OldCommandType { get; set; }
|
||||
internal bool OldClearParameters { get; set; }
|
||||
public IDataParameterCollection DataReaderParameters { get; set; }
|
||||
public virtual IDbBind DbBind
|
||||
{
|
||||
get
|
||||
@@ -96,7 +99,7 @@ namespace SqlSugar
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Check.Exception(true,ErrorMessage.ConnnectionOpen, ex.Message);
|
||||
Check.Exception(true, ErrorMessage.ConnnectionOpen, ex.Message);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -213,7 +216,10 @@ namespace SqlSugar
|
||||
}
|
||||
public IAdo UseStoredProcedure()
|
||||
{
|
||||
this.OldCommandType = this.CommandType;
|
||||
this.OldClearParameters = this.IsClearParameters;
|
||||
this.CommandType = CommandType.StoredProcedure;
|
||||
this.IsClearParameters = false;
|
||||
return this;
|
||||
}
|
||||
#endregion
|
||||
@@ -234,12 +240,15 @@ namespace SqlSugar
|
||||
}
|
||||
public virtual IDataReader GetDataReader(string sql, params SugarParameter[] parameters)
|
||||
{
|
||||
var isSp = this.CommandType == CommandType.StoredProcedure;
|
||||
if (this.ProcessingEventStartingSQL != null)
|
||||
ExecuteProcessingSQL(ref sql, parameters);
|
||||
ExecuteBefore(sql, parameters);
|
||||
IDbCommand sqlCommand = GetCommand(sql, parameters);
|
||||
var isAutoClose = this.Context.CurrentConnectionConfig.IsAutoCloseConnection && this.Transaction == null;
|
||||
IDataReader sqlDataReader = sqlCommand.ExecuteReader(isAutoClose ? CommandBehavior.CloseConnection : CommandBehavior.Default);
|
||||
if (isSp)
|
||||
DataReaderParameters = sqlCommand.Parameters;
|
||||
if (this.IsClearParameters)
|
||||
sqlCommand.Parameters.Clear();
|
||||
ExecuteAfter(sql, parameters);
|
||||
@@ -385,12 +394,25 @@ namespace SqlSugar
|
||||
builder.SqlQueryBuilder.sql.Append(sql);
|
||||
if (parameters != null && parameters.Any())
|
||||
builder.SqlQueryBuilder.Parameters.AddRange(parameters);
|
||||
List<T> result = null;
|
||||
using (var dataReader = this.GetDataReader(builder.SqlQueryBuilder.ToSqlString(), builder.SqlQueryBuilder.Parameters.ToArray()))
|
||||
{
|
||||
var reval = this.DbBind.DataReaderToList<T>(typeof(T), dataReader, builder.SqlQueryBuilder.Fields);
|
||||
result = this.DbBind.DataReaderToList<T>(typeof(T), dataReader, builder.SqlQueryBuilder.Fields);
|
||||
builder.SqlQueryBuilder.Clear();
|
||||
return reval;
|
||||
}
|
||||
if (this.Context.Ado.DataReaderParameters != null)
|
||||
{
|
||||
foreach (IDataParameter item in this.Context.Ado.DataReaderParameters)
|
||||
{
|
||||
var parameter = parameters.FirstOrDefault(it => item.ParameterName.Substring(1) == it.ParameterName.Substring(1));
|
||||
if (parameter != null)
|
||||
{
|
||||
parameter.Value = item.Value;
|
||||
}
|
||||
}
|
||||
this.Context.Ado.DataReaderParameters = null;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
public virtual List<T> SqlQuery<T>(string sql, List<SugarParameter> parameters)
|
||||
{
|
||||
@@ -421,17 +443,17 @@ namespace SqlSugar
|
||||
public virtual dynamic SqlQueryDynamic(string sql, object parameters = null)
|
||||
{
|
||||
var dt = this.GetDataTable(sql, parameters);
|
||||
return dt == null ? null : this.Context.RewritableMethods.DataTableToDynamic(dt);
|
||||
return dt == null ? null : this.Context.Utilities.DataTableToDynamic(dt);
|
||||
}
|
||||
public virtual dynamic SqlQueryDynamic(string sql, params SugarParameter[] parameters)
|
||||
{
|
||||
var dt = this.GetDataTable(sql, parameters);
|
||||
return dt == null ? null : this.Context.RewritableMethods.DataTableToDynamic(dt);
|
||||
return dt == null ? null : this.Context.Utilities.DataTableToDynamic(dt);
|
||||
}
|
||||
public dynamic SqlQueryDynamic(string sql, List<SugarParameter> parameters)
|
||||
{
|
||||
var dt = this.GetDataTable(sql, parameters);
|
||||
return dt == null ? null : this.Context.RewritableMethods.DataTableToDynamic(dt);
|
||||
return dt == null ? null : this.Context.Utilities.DataTableToDynamic(dt);
|
||||
}
|
||||
public virtual DataTable GetDataTable(string sql, params SugarParameter[] parameters)
|
||||
{
|
||||
@@ -536,7 +558,7 @@ namespace SqlSugar
|
||||
}
|
||||
else
|
||||
{
|
||||
action(sql, this.Context.RewritableMethods.SerializeObject(parameters.Select(it => new { key = it.ParameterName, value = it.Value.ObjToString() })));
|
||||
action(sql, this.Context.Utilities.SerializeObject(parameters.Select(it => new { key = it.ParameterName, value = it.Value.ObjToString() })));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -564,10 +586,17 @@ namespace SqlSugar
|
||||
}
|
||||
else
|
||||
{
|
||||
action(sql, this.Context.RewritableMethods.SerializeObject(parameters.Select(it => new { key = it.ParameterName, value = it.Value.ObjToString() })));
|
||||
action(sql, this.Context.Utilities.SerializeObject(parameters.Select(it => new { key = it.ParameterName, value = it.Value.ObjToString() })));
|
||||
}
|
||||
}
|
||||
}
|
||||
if (this.OldCommandType != 0)
|
||||
{
|
||||
this.CommandType = this.OldCommandType;
|
||||
this.IsClearParameters = this.OldClearParameters;
|
||||
this.OldCommandType = 0;
|
||||
this.OldClearParameters = false;
|
||||
}
|
||||
}
|
||||
public virtual SugarParameter[] GetParameters(object parameters, PropertyInfo[] propertyInfo = null)
|
||||
{
|
||||
|
@@ -23,7 +23,7 @@ namespace SqlSugar
|
||||
public virtual void InitTables(Type entityType)
|
||||
{
|
||||
|
||||
this.Context.RewritableMethods.RemoveCacheAll();
|
||||
this.Context.Utilities.RemoveCacheAll();
|
||||
this.Context.InitMppingInfo(entityType);
|
||||
if (!this.Context.DbMaintenance.IsAnySystemTablePermissions())
|
||||
{
|
||||
@@ -66,7 +66,7 @@ namespace SqlSugar
|
||||
#region Core Logic
|
||||
protected virtual void Execute(Type entityType)
|
||||
{
|
||||
var entityInfo = this.Context.EntityProvider.GetEntityInfo(entityType);
|
||||
var entityInfo = this.Context.EntityMaintenance.GetEntityInfo(entityType);
|
||||
var tableName = GetTableName(entityInfo);
|
||||
var isAny = this.Context.DbMaintenance.IsAnyTable(tableName);
|
||||
if (isAny)
|
||||
@@ -208,7 +208,7 @@ namespace SqlSugar
|
||||
}
|
||||
protected virtual string GetTableName(EntityInfo entityInfo)
|
||||
{
|
||||
return this.Context.EntityProvider.GetTableName(entityInfo.EntityName);
|
||||
return this.Context.EntityMaintenance.GetTableName(entityInfo.EntityName);
|
||||
}
|
||||
protected virtual DbColumnInfo EntityColumnToDbColumn(EntityInfo entityInfo, string tableName, EntityColumnInfo item)
|
||||
{
|
||||
|
@@ -10,7 +10,7 @@ namespace SqlSugar
|
||||
protected List<T> GetEntityList<T>(SqlSugarClient context, IDataReader dataReader, string fields)
|
||||
{
|
||||
Type type = typeof(T);
|
||||
var cacheManager = context.RewritableMethods.GetCacheInstance<IDataReaderEntityBuilder<T>>();
|
||||
var cacheManager = context.Utilities.GetCacheInstance<IDataReaderEntityBuilder<T>>();
|
||||
string key = "DataReaderToList." + fields + context.CurrentConnectionConfig.DbType + type.FullName;
|
||||
IDataReaderEntityBuilder<T> entytyList = null;
|
||||
if (cacheManager.ContainsKey(key))
|
||||
|
@@ -260,7 +260,7 @@ namespace SqlSugar
|
||||
case CSharpDataType.Guid:
|
||||
CheckType(bind.GuidThrow, bindProperyTypeName, validPropertyName, propertyName);
|
||||
if (bindProperyTypeName == "guid")
|
||||
method = isNullableType ? getConvertGuid : getStringGuid;
|
||||
method = isNullableType ? getConvertGuid : getGuid;
|
||||
break;
|
||||
case CSharpDataType.@byte:
|
||||
if (bindProperyTypeName == "byte")
|
||||
|
@@ -39,13 +39,13 @@ namespace SqlSugar
|
||||
|
||||
public void Init()
|
||||
{
|
||||
this.Context.RewritableMethods.RemoveCacheAll();
|
||||
this.Context.Utilities.RemoveCacheAll();
|
||||
if (!this.Context.DbMaintenance.IsAnySystemTablePermissions())
|
||||
{
|
||||
Check.Exception(true, "Dbfirst and Codefirst requires system table permissions");
|
||||
}
|
||||
this.TableInfoList = this.Context.RewritableMethods.TranslateCopy(this.Context.DbMaintenance.GetTableInfoList());
|
||||
var viewList = this.Context.RewritableMethods.TranslateCopy(this.Context.DbMaintenance.GetViewInfoList());
|
||||
this.TableInfoList = this.Context.Utilities.TranslateCopy(this.Context.DbMaintenance.GetTableInfoList());
|
||||
var viewList = this.Context.Utilities.TranslateCopy(this.Context.DbMaintenance.GetViewInfoList());
|
||||
if (viewList.IsValuable())
|
||||
{
|
||||
this.TableInfoList.AddRange(viewList);
|
||||
@@ -137,6 +137,12 @@ namespace SqlSugar
|
||||
foreach (var tableInfo in this.TableInfoList)
|
||||
{
|
||||
var columns = this.Context.DbMaintenance.GetColumnInfosByTableName(tableInfo.Name);
|
||||
if (this.Context.IgnoreColumns.IsValuable()) {
|
||||
var entityName = this.Context.EntityMaintenance.GetEntityName(tableInfo.Name);
|
||||
columns = columns.Where(c =>
|
||||
!this.Context.IgnoreColumns.Any(ig => ig.EntityName.Equals(entityName, StringComparison.CurrentCultureIgnoreCase)&&c.DbColumnName==ig.PropertyName)
|
||||
).ToList();
|
||||
}
|
||||
string className = tableInfo.Name;
|
||||
string classText = this.ClassTemplate;
|
||||
string ConstructorText = IsDefaultValue ? this.ConstructorTemplate : null;
|
||||
|
@@ -41,7 +41,7 @@ namespace SqlSugar
|
||||
{
|
||||
string cacheKey = "DbMaintenanceProvider.GetIsIdentities" + this.SqlBuilder.GetNoTranslationColumnName(tableName).ToLower();
|
||||
cacheKey = GetCacheKey(cacheKey);
|
||||
return this.Context.RewritableMethods.GetCacheInstance<List<string>>().Func(cacheKey,
|
||||
return this.Context.Utilities.GetCacheInstance<List<string>>().Func(cacheKey,
|
||||
(cm, key) =>
|
||||
{
|
||||
return cm[cacheKey];
|
||||
@@ -56,7 +56,7 @@ namespace SqlSugar
|
||||
{
|
||||
string cacheKey = "DbMaintenanceProvider.GetPrimaries" + this.SqlBuilder.GetNoTranslationColumnName(tableName).ToLower();
|
||||
cacheKey = GetCacheKey(cacheKey);
|
||||
return this.Context.RewritableMethods.GetCacheInstance<List<string>>().Func(cacheKey,
|
||||
return this.Context.Utilities.GetCacheInstance<List<string>>().Func(cacheKey,
|
||||
(cm, key) =>
|
||||
{
|
||||
return cm[cacheKey];
|
||||
@@ -216,7 +216,7 @@ namespace SqlSugar
|
||||
#region Private
|
||||
private List<T> GetListOrCache<T>(string cacheKey, string sql)
|
||||
{
|
||||
return this.Context.RewritableMethods.GetCacheInstance<List<T>>().Func(cacheKey,
|
||||
return this.Context.Utilities.GetCacheInstance<List<T>>().Func(cacheKey,
|
||||
(cm, key) =>
|
||||
{
|
||||
return cm[cacheKey];
|
||||
|
@@ -19,12 +19,12 @@ namespace SqlSugar
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.Context.EntityProvider.GetEntityInfo<T>();
|
||||
return this.Context.EntityMaintenance.GetEntityInfo<T>();
|
||||
}
|
||||
}
|
||||
public int ExecuteCommand()
|
||||
{
|
||||
DeleteBuilder.EntityInfo = this.Context.EntityProvider.GetEntityInfo<T>();
|
||||
DeleteBuilder.EntityInfo = this.Context.EntityMaintenance.GetEntityInfo<T>();
|
||||
string sql = DeleteBuilder.ToSqlString();
|
||||
var paramters = DeleteBuilder.Parameters == null ? null : DeleteBuilder.Parameters.ToArray();
|
||||
RestoreMapping();
|
||||
@@ -45,7 +45,7 @@ namespace SqlSugar
|
||||
var entityName = typeof(T).Name;
|
||||
IsAs = true;
|
||||
OldMappingTableList = this.Context.MappingTables;
|
||||
this.Context.MappingTables = this.Context.RewritableMethods.TranslateCopy(this.Context.MappingTables);
|
||||
this.Context.MappingTables = this.Context.Utilities.TranslateCopy(this.Context.MappingTables);
|
||||
this.Context.MappingTables.Add(entityName, tableName);
|
||||
return this; ;
|
||||
}
|
||||
@@ -57,7 +57,7 @@ namespace SqlSugar
|
||||
Where(SqlBuilder.SqlFalse);
|
||||
return this;
|
||||
}
|
||||
string tableName = this.Context.EntityProvider.GetTableName<T>();
|
||||
string tableName = this.Context.EntityMaintenance.GetTableName<T>();
|
||||
var primaryFields = this.GetPrimaryKeys();
|
||||
var isSinglePrimaryKey = primaryFields.Count == 1;
|
||||
Check.ArgumentNullException(primaryFields, string.Format("Table {0} with no primarykey", tableName));
|
||||
@@ -67,7 +67,7 @@ namespace SqlSugar
|
||||
var primaryField = primaryFields.Single();
|
||||
foreach (var deleteObj in deleteObjs)
|
||||
{
|
||||
var entityPropertyName = this.Context.EntityProvider.GetPropertyName<T>(primaryField);
|
||||
var entityPropertyName = this.Context.EntityMaintenance.GetPropertyName<T>(primaryField);
|
||||
var columnInfo = EntityInfo.Columns.Single(it => it.PropertyName.Equals(entityPropertyName, StringComparison.CurrentCultureIgnoreCase));
|
||||
var value = columnInfo.PropertyInfo.GetValue(deleteObj, null);
|
||||
primaryKeyValues.Add(value);
|
||||
@@ -102,7 +102,7 @@ namespace SqlSugar
|
||||
{
|
||||
if (i == 0)
|
||||
andString.Append(DeleteBuilder.WhereInAndTemplate + UtilConstants.Space);
|
||||
var entityPropertyName = this.Context.EntityProvider.GetPropertyName<T>(primaryField);
|
||||
var entityPropertyName = this.Context.EntityMaintenance.GetPropertyName<T>(primaryField);
|
||||
var columnInfo = EntityInfo.Columns.Single(it => it.PropertyName == entityPropertyName);
|
||||
var entityValue = columnInfo.PropertyInfo.GetValue(deleteObj, null);
|
||||
andString.AppendFormat(DeleteBuilder.WhereInEqualTemplate, primaryField, entityValue);
|
||||
@@ -176,7 +176,7 @@ namespace SqlSugar
|
||||
Where(SqlBuilder.SqlFalse);
|
||||
return this;
|
||||
}
|
||||
string tableName = this.Context.EntityProvider.GetTableName<T>();
|
||||
string tableName = this.Context.EntityMaintenance.GetTableName<T>();
|
||||
string primaryField = null;
|
||||
primaryField = GetPrimaryKeys().FirstOrDefault();
|
||||
Check.ArgumentNullException(primaryField, "Table " + tableName + " with no primarykey");
|
||||
@@ -209,7 +209,7 @@ namespace SqlSugar
|
||||
|
||||
public KeyValuePair<string, List<SugarParameter>> ToSql()
|
||||
{
|
||||
DeleteBuilder.EntityInfo = this.Context.EntityProvider.GetEntityInfo<T>();
|
||||
DeleteBuilder.EntityInfo = this.Context.EntityMaintenance.GetEntityInfo<T>();
|
||||
string sql = DeleteBuilder.ToSqlString();
|
||||
var paramters = DeleteBuilder.Parameters == null ? null : DeleteBuilder.Parameters.ToList();
|
||||
RestoreMapping();
|
||||
@@ -220,7 +220,7 @@ namespace SqlSugar
|
||||
{
|
||||
if (this.Context.IsSystemTablesConfig)
|
||||
{
|
||||
return this.Context.DbMaintenance.GetPrimaries(this.Context.EntityProvider.GetTableName(this.EntityInfo.EntityName));
|
||||
return this.Context.DbMaintenance.GetPrimaries(this.Context.EntityMaintenance.GetTableName(this.EntityInfo.EntityName));
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -232,7 +232,7 @@ namespace SqlSugar
|
||||
{
|
||||
if (this.Context.IsSystemTablesConfig)
|
||||
{
|
||||
return this.Context.DbMaintenance.GetIsIdentities(this.Context.EntityProvider.GetTableName(this.EntityInfo.EntityName));
|
||||
return this.Context.DbMaintenance.GetIsIdentities(this.Context.EntityMaintenance.GetTableName(this.EntityInfo.EntityName));
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -249,12 +249,8 @@ namespace SqlSugar
|
||||
}
|
||||
|
||||
private IDeleteable<T> CopyDeleteable() {
|
||||
var asyncContext = this.Context.CopyContext(this.Context.RewritableMethods.TranslateCopy(this.Context.CurrentConnectionConfig));
|
||||
var asyncContext = this.Context.Utilities.CopyContext(this.Context,true);
|
||||
asyncContext.CurrentConnectionConfig.IsAutoCloseConnection = true;
|
||||
asyncContext.Ado.IsEnableLogEvent = this.Context.Ado.IsEnableLogEvent;
|
||||
asyncContext.Ado.LogEventStarting = this.Context.Ado.LogEventStarting;
|
||||
asyncContext.Ado.LogEventCompleted = this.Context.Ado.LogEventCompleted;
|
||||
asyncContext.Ado.ProcessingEventStartingSQL = this.Context.Ado.ProcessingEventStartingSQL;
|
||||
|
||||
var asyncDeleteable = asyncContext.Deleteable<T>();
|
||||
var asyncDeleteBuilder = asyncDeleteable.DeleteBuilder;
|
||||
|
@@ -0,0 +1,153 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace SqlSugar
|
||||
{
|
||||
public class EntityMaintenance
|
||||
{
|
||||
public SqlSugarClient Context { get; set; }
|
||||
|
||||
public EntityInfo GetEntityInfo<T>()
|
||||
{
|
||||
return GetEntityInfo(typeof(T));
|
||||
}
|
||||
public EntityInfo GetEntityInfo(Type type)
|
||||
{
|
||||
string cacheKey = "GetEntityInfo" + type.FullName;
|
||||
return this.Context.Utilities.GetCacheInstance<EntityInfo>().Func(cacheKey,
|
||||
(cm, key) =>
|
||||
{
|
||||
return cm[cacheKey];
|
||||
|
||||
}, (cm, key) =>
|
||||
{
|
||||
EntityInfo result = new EntityInfo();
|
||||
var sugarAttributeInfo = type.GetTypeInfo().GetCustomAttributes(typeof(SugarTable), true).Where(it => it is SugarTable).SingleOrDefault();
|
||||
if (sugarAttributeInfo.IsValuable())
|
||||
{
|
||||
var sugarTable = (SugarTable)sugarAttributeInfo;
|
||||
result.DbTableName = sugarTable.TableName;
|
||||
}
|
||||
result.Type = type;
|
||||
result.EntityName = result.Type.Name;
|
||||
result.Columns = new List<EntityColumnInfo>();
|
||||
SetColumns(result);
|
||||
return result;
|
||||
});
|
||||
}
|
||||
public string GetTableName<T>()
|
||||
{
|
||||
var typeName = typeof(T).Name;
|
||||
if (this.Context.MappingTables == null || this.Context.MappingTables.Count == 0) return typeName;
|
||||
else
|
||||
{
|
||||
var mappingInfo = this.Context.MappingTables.SingleOrDefault(it => it.EntityName == typeName);
|
||||
return mappingInfo == null ? typeName : mappingInfo.DbTableName;
|
||||
}
|
||||
}
|
||||
public string GetTableName(Type entityType)
|
||||
{
|
||||
var typeName = entityType.Name;
|
||||
if (this.Context.MappingTables == null || this.Context.MappingTables.Count == 0) return typeName;
|
||||
else
|
||||
{
|
||||
var mappingInfo = this.Context.MappingTables.SingleOrDefault(it => it.EntityName == typeName);
|
||||
return mappingInfo == null ? typeName : mappingInfo.DbTableName;
|
||||
}
|
||||
}
|
||||
public string GetTableName(string entityName)
|
||||
{
|
||||
var typeName = entityName;
|
||||
if (this.Context.MappingTables == null || this.Context.MappingTables.Count == 0) return typeName;
|
||||
else
|
||||
{
|
||||
var mappingInfo = this.Context.MappingTables.SingleOrDefault(it => it.EntityName == typeName);
|
||||
return mappingInfo == null ? typeName : mappingInfo.DbTableName;
|
||||
}
|
||||
}
|
||||
public string GetEntityName(string tableName)
|
||||
{
|
||||
if (this.Context.MappingTables == null || this.Context.MappingTables.Count == 0) return tableName;
|
||||
else
|
||||
{
|
||||
var mappingInfo = this.Context.MappingTables.SingleOrDefault(it => it.DbTableName == tableName);
|
||||
return mappingInfo == null ? tableName : mappingInfo.EntityName;
|
||||
}
|
||||
}
|
||||
public string GetDbColumnName<T>(string propertyName)
|
||||
{
|
||||
var isAny=this.GetEntityInfo<T>().Columns.Any(it => it.PropertyName.Equals(propertyName, StringComparison.CurrentCultureIgnoreCase));
|
||||
Check.Exception(!isAny, "Property " + propertyName + " is Invalid");
|
||||
var typeName = typeof(T).Name;
|
||||
if (this.Context.MappingColumns == null || this.Context.MappingColumns.Count == 0) return propertyName;
|
||||
else
|
||||
{
|
||||
var mappingInfo = this.Context.MappingColumns.SingleOrDefault(it => it.EntityName == typeName && it.PropertyName == propertyName);
|
||||
return mappingInfo == null ? propertyName : mappingInfo.DbColumnName;
|
||||
}
|
||||
}
|
||||
public string GetPropertyName<T>(string dbColumnName)
|
||||
{
|
||||
var typeName = typeof(T).Name;
|
||||
if (this.Context.MappingColumns == null || this.Context.MappingColumns.Count == 0) return dbColumnName;
|
||||
else
|
||||
{
|
||||
var mappingInfo = this.Context.MappingColumns.SingleOrDefault(it => it.EntityName == typeName && it.DbColumnName == dbColumnName);
|
||||
return mappingInfo == null ? dbColumnName : mappingInfo.PropertyName;
|
||||
}
|
||||
}
|
||||
public PropertyInfo GetProperty<T>(string dbColumnName)
|
||||
{
|
||||
var propertyName = GetPropertyName<T>(dbColumnName);
|
||||
return typeof(T).GetProperties().First(it => it.Name == propertyName);
|
||||
}
|
||||
#region Primary key
|
||||
private static void SetColumns(EntityInfo result)
|
||||
{
|
||||
foreach (var property in result.Type.GetProperties())
|
||||
{
|
||||
EntityColumnInfo column = new EntityColumnInfo();
|
||||
//var isVirtual = property.GetGetMethod().IsVirtual;
|
||||
//if (isVirtual) continue;
|
||||
var sugarColumn = property.GetCustomAttributes(typeof(SugarColumn), true)
|
||||
.Where(it => it is SugarColumn)
|
||||
.Select(it => (SugarColumn)it)
|
||||
.FirstOrDefault();
|
||||
column.DbTableName = result.DbTableName;
|
||||
column.EntityName = result.EntityName;
|
||||
column.PropertyName = property.Name;
|
||||
column.PropertyInfo = property;
|
||||
if (sugarColumn.IsNullOrEmpty())
|
||||
{
|
||||
column.DbColumnName = property.Name;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (sugarColumn.IsIgnore == false)
|
||||
{
|
||||
column.DbColumnName = sugarColumn.ColumnName.IsNullOrEmpty() ? property.Name : sugarColumn.ColumnName;
|
||||
column.IsPrimarykey = sugarColumn.IsPrimaryKey;
|
||||
column.IsIdentity = sugarColumn.IsIdentity;
|
||||
column.ColumnDescription = sugarColumn.ColumnDescription;
|
||||
column.IsNullable = sugarColumn.IsNullable;
|
||||
column.Length = sugarColumn.Length;
|
||||
column.OldDbColumnName = sugarColumn.OldColumnName;
|
||||
column.DataType = sugarColumn.ColumnDataType;
|
||||
column.DecimalDigits = sugarColumn.DecimalDigits;
|
||||
}
|
||||
else
|
||||
{
|
||||
column.IsIgnore = true;
|
||||
}
|
||||
}
|
||||
result.Columns.Add(column);
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
}
|
||||
}
|
@@ -79,7 +79,7 @@ namespace SqlSugar
|
||||
setValue = idValue;
|
||||
else
|
||||
setValue = Convert.ToInt32(idValue);
|
||||
this.Context.EntityProvider.GetProperty<T>(identityKey).SetValue(result,setValue, null);
|
||||
this.Context.EntityMaintenance.GetProperty<T>(identityKey).SetValue(result,setValue, null);
|
||||
return idValue>0;
|
||||
}
|
||||
public Task<int> ExecuteCommandAsync()
|
||||
@@ -140,7 +140,7 @@ namespace SqlSugar
|
||||
var entityName = typeof(T).Name;
|
||||
IsAs = true;
|
||||
OldMappingTableList = this.Context.MappingTables;
|
||||
this.Context.MappingTables = this.Context.RewritableMethods.TranslateCopy(this.Context.MappingTables);
|
||||
this.Context.MappingTables = this.Context.Utilities.TranslateCopy(this.Context.MappingTables);
|
||||
this.Context.MappingTables.Add(entityName, tableName);
|
||||
return this; ;
|
||||
}
|
||||
@@ -280,7 +280,7 @@ namespace SqlSugar
|
||||
{
|
||||
if (this.Context.IsSystemTablesConfig)
|
||||
{
|
||||
return this.Context.DbMaintenance.GetPrimaries(this.Context.EntityProvider.GetTableName(this.EntityInfo.EntityName));
|
||||
return this.Context.DbMaintenance.GetPrimaries(this.Context.EntityMaintenance.GetTableName(this.EntityInfo.EntityName));
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -291,7 +291,7 @@ namespace SqlSugar
|
||||
{
|
||||
if (this.Context.IsSystemTablesConfig)
|
||||
{
|
||||
return this.Context.DbMaintenance.GetIsIdentities(this.Context.EntityProvider.GetTableName(this.EntityInfo.EntityName));
|
||||
return this.Context.DbMaintenance.GetIsIdentities(this.Context.EntityMaintenance.GetTableName(this.EntityInfo.EntityName));
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -307,12 +307,8 @@ namespace SqlSugar
|
||||
}
|
||||
private IInsertable<T> CopyInsertable()
|
||||
{
|
||||
var asyncContext = this.Context.CopyContext(this.Context.RewritableMethods.TranslateCopy(this.Context.CurrentConnectionConfig));
|
||||
var asyncContext = this.Context.Utilities.CopyContext(this.Context,true);
|
||||
asyncContext.CurrentConnectionConfig.IsAutoCloseConnection = true;
|
||||
asyncContext.Ado.IsEnableLogEvent = this.Context.Ado.IsEnableLogEvent;
|
||||
asyncContext.Ado.LogEventStarting = this.Context.Ado.LogEventStarting;
|
||||
asyncContext.Ado.LogEventCompleted = this.Context.Ado.LogEventCompleted;
|
||||
asyncContext.Ado.ProcessingEventStartingSQL = this.Context.Ado.ProcessingEventStartingSQL;
|
||||
|
||||
var asyncInsertable = asyncContext.Insertable<T>(this.InsertObjs);
|
||||
var asyncInsertableBuilder = asyncInsertable.InsertBuilder;
|
||||
|
@@ -29,7 +29,8 @@ namespace SqlSugar
|
||||
{
|
||||
return this.SqlBuilder.QueryBuilder;
|
||||
}
|
||||
set {
|
||||
set
|
||||
{
|
||||
this.SqlBuilder.QueryBuilder = value;
|
||||
}
|
||||
}
|
||||
@@ -37,7 +38,7 @@ namespace SqlSugar
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.Context.EntityProvider.GetEntityInfo<T>();
|
||||
return this.Context.EntityMaintenance.GetEntityInfo<T>();
|
||||
}
|
||||
}
|
||||
public void Clear()
|
||||
@@ -48,22 +49,12 @@ namespace SqlSugar
|
||||
public virtual ISugarQueryable<T> AS<T2>(string tableName)
|
||||
{
|
||||
var entityName = typeof(T2).Name;
|
||||
IsAs = true;
|
||||
OldMappingTableList = this.Context.MappingTables;
|
||||
this.Context.MappingTables = this.Context.RewritableMethods.TranslateCopy(this.Context.MappingTables);
|
||||
this.Context.MappingTables.Add(entityName, tableName);
|
||||
this.QueryableMappingTableList = this.Context.MappingTables;
|
||||
return this;
|
||||
return _As(tableName, entityName);
|
||||
}
|
||||
public ISugarQueryable<T> AS(string tableName)
|
||||
{
|
||||
var entityName = typeof(T).Name;
|
||||
IsAs = true;
|
||||
OldMappingTableList = this.Context.MappingTables;
|
||||
this.Context.MappingTables = this.Context.RewritableMethods.TranslateCopy(this.Context.MappingTables);
|
||||
this.Context.MappingTables.Add(entityName, tableName);
|
||||
this.QueryableMappingTableList = this.Context.MappingTables;
|
||||
return this;
|
||||
return _As(tableName, entityName);
|
||||
}
|
||||
public virtual ISugarQueryable<T> With(string withString)
|
||||
{
|
||||
@@ -73,16 +64,7 @@ namespace SqlSugar
|
||||
|
||||
public virtual ISugarQueryable<T> Filter(string FilterName, bool isDisabledGobalFilter = false)
|
||||
{
|
||||
QueryBuilder.IsDisabledGobalFilter = isDisabledGobalFilter;
|
||||
if (this.Context.QueryFilter.GeFilterList.IsValuable() && FilterName.IsValuable())
|
||||
{
|
||||
var list = this.Context.QueryFilter.GeFilterList.Where(it => it.FilterName == FilterName && it.IsJoinQuery == !QueryBuilder.IsSingle());
|
||||
foreach (var item in list)
|
||||
{
|
||||
var filterResult = item.FilterValue(this.Context);
|
||||
Where(SqlBuilder.AppendWhereOrAnd(QueryBuilder.WhereInfos.IsNullOrEmpty(), filterResult.Sql), filterResult.Parameters);
|
||||
}
|
||||
}
|
||||
_Filter(FilterName, isDisabledGobalFilter);
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -98,6 +80,12 @@ namespace SqlSugar
|
||||
QueryBuilder.Parameters.AddRange(parameters);
|
||||
return this;
|
||||
}
|
||||
public virtual ISugarQueryable<T> AddParameters(List<SugarParameter> parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(parameters);
|
||||
return this;
|
||||
}
|
||||
public virtual ISugarQueryable<T> AddParameters(SugarParameter parameter)
|
||||
{
|
||||
if (parameter != null)
|
||||
@@ -120,7 +108,6 @@ namespace SqlSugar
|
||||
});
|
||||
return this;
|
||||
}
|
||||
|
||||
public virtual ISugarQueryable<T> Where(Expression<Func<T, bool>> expression)
|
||||
{
|
||||
this._Where(expression);
|
||||
@@ -363,7 +350,9 @@ namespace SqlSugar
|
||||
public virtual T Single(Expression<Func<T, bool>> expression)
|
||||
{
|
||||
_Where(expression);
|
||||
return Single();
|
||||
var result = Single();
|
||||
this.QueryBuilder.WhereInfos.Remove(this.QueryBuilder.WhereInfos.Last());
|
||||
return result;
|
||||
}
|
||||
|
||||
public virtual T First()
|
||||
@@ -387,7 +376,9 @@ namespace SqlSugar
|
||||
public virtual T First(Expression<Func<T, bool>> expression)
|
||||
{
|
||||
_Where(expression);
|
||||
return First();
|
||||
var result = First();
|
||||
this.QueryBuilder.WhereInfos.Remove(this.QueryBuilder.WhereInfos.Last());
|
||||
return result;
|
||||
}
|
||||
|
||||
public virtual bool Any(Expression<Func<T, bool>> expression)
|
||||
@@ -440,6 +431,13 @@ namespace SqlSugar
|
||||
QueryBuilder.IsCount = false;
|
||||
return reval;
|
||||
}
|
||||
public virtual int Count(Expression<Func<T, bool>> expression)
|
||||
{
|
||||
_Where(expression);
|
||||
var result = Count();
|
||||
this.QueryBuilder.WhereInfos.Remove(this.QueryBuilder.WhereInfos.Last());
|
||||
return result;
|
||||
}
|
||||
|
||||
public virtual TResult Max<TResult>(string maxField)
|
||||
{
|
||||
@@ -486,15 +484,15 @@ namespace SqlSugar
|
||||
}
|
||||
public virtual string ToJson()
|
||||
{
|
||||
return this.Context.RewritableMethods.SerializeObject(this.ToList());
|
||||
return this.Context.Utilities.SerializeObject(this.ToList());
|
||||
}
|
||||
public virtual string ToJsonPage(int pageIndex, int pageSize)
|
||||
{
|
||||
return this.Context.RewritableMethods.SerializeObject(this.ToPageList(pageIndex, pageSize));
|
||||
return this.Context.Utilities.SerializeObject(this.ToPageList(pageIndex, pageSize));
|
||||
}
|
||||
public virtual string ToJsonPage(int pageIndex, int pageSize, ref int totalNumber)
|
||||
{
|
||||
return this.Context.RewritableMethods.SerializeObject(this.ToPageList(pageIndex, pageSize, ref totalNumber));
|
||||
return this.Context.Utilities.SerializeObject(this.ToPageList(pageIndex, pageSize, ref totalNumber));
|
||||
}
|
||||
|
||||
public virtual DataTable ToDataTable()
|
||||
@@ -649,7 +647,16 @@ namespace SqlSugar
|
||||
result.Start();
|
||||
return result;
|
||||
}
|
||||
|
||||
public Task<int> CountAsync(Expression<Func<T, bool>> expression)
|
||||
{
|
||||
Task<int> result = new Task<int>(() =>
|
||||
{
|
||||
ISugarQueryable<T> asyncQueryable = CopyQueryable();
|
||||
return asyncQueryable.Count(expression);
|
||||
});
|
||||
result.Start();
|
||||
return result;
|
||||
}
|
||||
public Task<TResult> MaxAsync<TResult>(string maxField)
|
||||
{
|
||||
Task<TResult> result = new Task<TResult>(() =>
|
||||
@@ -765,19 +772,19 @@ namespace SqlSugar
|
||||
Task<string> result = new Task<string>(() =>
|
||||
{
|
||||
ISugarQueryable<T> asyncQueryable = CopyQueryable();
|
||||
return asyncQueryable.ToJsonPage(pageIndex,pageSize);
|
||||
return asyncQueryable.ToJsonPage(pageIndex, pageSize);
|
||||
});
|
||||
result.Start();
|
||||
return result;
|
||||
}
|
||||
|
||||
public Task<KeyValuePair<string,int>> ToJsonPageAsync(int pageIndex, int pageSize, int totalNumber)
|
||||
public Task<KeyValuePair<string, int>> ToJsonPageAsync(int pageIndex, int pageSize, int totalNumber)
|
||||
{
|
||||
Task<KeyValuePair<string, int>> result = new Task<KeyValuePair<string, int>>(() =>
|
||||
{
|
||||
int totalNumberAsync = 0;
|
||||
ISugarQueryable<T> asyncQueryable = CopyQueryable();
|
||||
var list= asyncQueryable.ToJsonPage(pageIndex, pageSize,ref totalNumberAsync);
|
||||
var list = asyncQueryable.ToJsonPage(pageIndex, pageSize, ref totalNumberAsync);
|
||||
return new KeyValuePair<string, int>(list, totalNumberAsync);
|
||||
});
|
||||
result.Start();
|
||||
@@ -806,7 +813,7 @@ namespace SqlSugar
|
||||
return result;
|
||||
}
|
||||
|
||||
public Task<KeyValuePair<DataTable, int>> ToDataTablePageAsync(int pageIndex, int pageSize,int totalNumber)
|
||||
public Task<KeyValuePair<DataTable, int>> ToDataTablePageAsync(int pageIndex, int pageSize, int totalNumber)
|
||||
{
|
||||
Task<KeyValuePair<DataTable, int>> result = new Task<KeyValuePair<DataTable, int>>(() =>
|
||||
{
|
||||
@@ -911,6 +918,28 @@ namespace SqlSugar
|
||||
var lamResult = QueryBuilder.GetExpressionValue(expression, isSingle ? ResolveExpressType.FieldSingle : ResolveExpressType.FieldMultiple);
|
||||
return Sum<TResult>(lamResult.GetResultString());
|
||||
}
|
||||
protected ISugarQueryable<T> _As(string tableName, string entityName)
|
||||
{
|
||||
IsAs = true;
|
||||
OldMappingTableList = this.Context.MappingTables;
|
||||
this.Context.MappingTables = this.Context.Utilities.TranslateCopy(this.Context.MappingTables);
|
||||
this.Context.MappingTables.Add(entityName, tableName);
|
||||
this.QueryableMappingTableList = this.Context.MappingTables;
|
||||
return this;
|
||||
}
|
||||
protected void _Filter(string FilterName, bool isDisabledGobalFilter)
|
||||
{
|
||||
QueryBuilder.IsDisabledGobalFilter = isDisabledGobalFilter;
|
||||
if (this.Context.QueryFilter.GeFilterList.IsValuable() && FilterName.IsValuable())
|
||||
{
|
||||
var list = this.Context.QueryFilter.GeFilterList.Where(it => it.FilterName == FilterName && it.IsJoinQuery == !QueryBuilder.IsSingle());
|
||||
foreach (var item in list)
|
||||
{
|
||||
var filterResult = item.FilterValue(this.Context);
|
||||
Where(SqlBuilder.AppendWhereOrAnd(QueryBuilder.WhereInfos.IsNullOrEmpty(), filterResult.Sql), filterResult.Parameters);
|
||||
}
|
||||
}
|
||||
}
|
||||
public ISugarQueryable<T> _PartitionBy(Expression expression)
|
||||
{
|
||||
LambdaExpression lambda = expression as LambdaExpression;
|
||||
@@ -948,11 +977,11 @@ namespace SqlSugar
|
||||
{
|
||||
if (typeof(TResult) == typeof(ExpandoObject))
|
||||
{
|
||||
return this.Context.RewritableMethods.DataReaderToExpandoObjectList(dataReader) as List<TResult>;
|
||||
return this.Context.Utilities.DataReaderToExpandoObjectList(dataReader) as List<TResult>;
|
||||
}
|
||||
if (entityType.IsAnonymousType() || isComplexModel)
|
||||
{
|
||||
result = this.Context.RewritableMethods.DataReaderToDynamicList<TResult>(dataReader);
|
||||
result = this.Context.Utilities.DataReaderToDynamicList<TResult>(dataReader);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -983,7 +1012,7 @@ namespace SqlSugar
|
||||
{
|
||||
if (this.Context.IsSystemTablesConfig)
|
||||
{
|
||||
return this.Context.DbMaintenance.GetPrimaries(this.Context.EntityProvider.GetTableName(this.EntityInfo.EntityName));
|
||||
return this.Context.DbMaintenance.GetPrimaries(this.Context.EntityMaintenance.GetTableName(this.EntityInfo.EntityName));
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1024,9 +1053,7 @@ namespace SqlSugar
|
||||
foreach (var item in result)
|
||||
{
|
||||
var contextProperty = item.GetType().GetProperty("Context");
|
||||
ConnectionConfig config = new ConnectionConfig();
|
||||
config = this.Context.CurrentConnectionConfig;
|
||||
SqlSugarClient newClient = this.Context.CopyContext(config);
|
||||
SqlSugarClient newClient = this.Context.Utilities.CopyContext(this.Context);
|
||||
contextProperty.SetValue(item, newClient, null);
|
||||
}
|
||||
}
|
||||
@@ -1034,12 +1061,8 @@ namespace SqlSugar
|
||||
}
|
||||
private ISugarQueryable<T> CopyQueryable()
|
||||
{
|
||||
var asyncContext = this.Context.CopyContext(this.Context.RewritableMethods.TranslateCopy(this.Context.CurrentConnectionConfig));
|
||||
var asyncContext = this.Context.Utilities.CopyContext(this.Context, true);
|
||||
asyncContext.CurrentConnectionConfig.IsAutoCloseConnection = true;
|
||||
asyncContext.Ado.IsEnableLogEvent = this.Context.Ado.IsEnableLogEvent;
|
||||
asyncContext.Ado.LogEventStarting = this.Context.Ado.LogEventStarting;
|
||||
asyncContext.Ado.LogEventCompleted = this.Context.Ado.LogEventCompleted;
|
||||
asyncContext.Ado.ProcessingEventStartingSQL = this.Context.Ado.ProcessingEventStartingSQL;
|
||||
|
||||
var asyncQueryable = asyncContext.Queryable<ExpandoObject>().Select<T>(string.Empty);
|
||||
var asyncQueryableBuilder = asyncQueryable.QueryBuilder;
|
||||
@@ -1179,6 +1202,63 @@ namespace SqlSugar
|
||||
return this;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Other
|
||||
public new ISugarQueryable<T, T2> AS<AsT>(string tableName)
|
||||
{
|
||||
var entityName = typeof(AsT).Name;
|
||||
_As(tableName, entityName);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2> AS(string tableName)
|
||||
{
|
||||
var entityName = typeof(T).Name;
|
||||
_As(tableName, entityName);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2> Filter(string FilterName, bool isDisabledGobalFilter = false)
|
||||
{
|
||||
_Filter(FilterName, isDisabledGobalFilter);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2> AddParameters(object parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(Context.Ado.GetParameters(parameters));
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2> AddParameters(SugarParameter[] parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(parameters);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2> AddParameters(List<SugarParameter> parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(parameters);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2> AddJoinInfo(string tableName, string shortName, string joinWhere, JoinType type = JoinType.Left)
|
||||
{
|
||||
QueryBuilder.JoinIndex = +1;
|
||||
QueryBuilder.JoinQueryInfos
|
||||
.Add(new JoinQueryInfo()
|
||||
{
|
||||
JoinIndex = QueryBuilder.JoinIndex,
|
||||
TableName = tableName,
|
||||
ShortName = shortName,
|
||||
JoinType = type,
|
||||
JoinWhere = joinWhere
|
||||
});
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T,T2> With(string withString)
|
||||
{
|
||||
base.With(withString);
|
||||
return this;
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
#endregion
|
||||
#region T3
|
||||
@@ -1331,6 +1411,63 @@ namespace SqlSugar
|
||||
return this;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Other
|
||||
public new ISugarQueryable<T, T2,T3> AS<AsT>(string tableName)
|
||||
{
|
||||
var entityName = typeof(AsT).Name;
|
||||
_As(tableName, entityName);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3> AS(string tableName)
|
||||
{
|
||||
var entityName = typeof(T).Name;
|
||||
_As(tableName, entityName);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3> Filter(string FilterName, bool isDisabledGobalFilter = false)
|
||||
{
|
||||
_Filter(FilterName, isDisabledGobalFilter);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3> AddParameters(object parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(Context.Ado.GetParameters(parameters));
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3> AddParameters(SugarParameter[] parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(parameters);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3> AddParameters(List<SugarParameter> parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(parameters);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3> AddJoinInfo(string tableName, string shortName, string joinWhere, JoinType type = JoinType.Left)
|
||||
{
|
||||
QueryBuilder.JoinIndex = +1;
|
||||
QueryBuilder.JoinQueryInfos
|
||||
.Add(new JoinQueryInfo()
|
||||
{
|
||||
JoinIndex = QueryBuilder.JoinIndex,
|
||||
TableName = tableName,
|
||||
ShortName = shortName,
|
||||
JoinType = type,
|
||||
JoinWhere = joinWhere
|
||||
});
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3> With(string withString)
|
||||
{
|
||||
base.With(withString);
|
||||
return this;
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
#endregion
|
||||
#region T4
|
||||
@@ -1504,6 +1641,63 @@ namespace SqlSugar
|
||||
return this;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Other
|
||||
public new ISugarQueryable<T, T2, T3,T4> AS<AsT>(string tableName)
|
||||
{
|
||||
var entityName = typeof(AsT).Name;
|
||||
_As(tableName, entityName);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4> AS(string tableName)
|
||||
{
|
||||
var entityName = typeof(T).Name;
|
||||
_As(tableName, entityName);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4> Filter(string FilterName, bool isDisabledGobalFilter = false)
|
||||
{
|
||||
_Filter(FilterName, isDisabledGobalFilter);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4> AddParameters(object parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(Context.Ado.GetParameters(parameters));
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4> AddParameters(SugarParameter[] parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(parameters);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4> AddParameters(List<SugarParameter> parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(parameters);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4> AddJoinInfo(string tableName, string shortName, string joinWhere, JoinType type = JoinType.Left)
|
||||
{
|
||||
QueryBuilder.JoinIndex = +1;
|
||||
QueryBuilder.JoinQueryInfos
|
||||
.Add(new JoinQueryInfo()
|
||||
{
|
||||
JoinIndex = QueryBuilder.JoinIndex,
|
||||
TableName = tableName,
|
||||
ShortName = shortName,
|
||||
JoinType = type,
|
||||
JoinWhere = joinWhere
|
||||
});
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4> With(string withString)
|
||||
{
|
||||
base.With(withString);
|
||||
return this;
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
#endregion
|
||||
#region T5
|
||||
@@ -1703,6 +1897,63 @@ namespace SqlSugar
|
||||
return this;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Other
|
||||
public new ISugarQueryable<T, T2, T3, T4,T5> AS<AsT>(string tableName)
|
||||
{
|
||||
var entityName = typeof(AsT).Name;
|
||||
_As(tableName, entityName);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5> AS(string tableName)
|
||||
{
|
||||
var entityName = typeof(T).Name;
|
||||
_As(tableName, entityName);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5> Filter(string FilterName, bool isDisabledGobalFilter = false)
|
||||
{
|
||||
_Filter(FilterName, isDisabledGobalFilter);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5> AddParameters(object parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(Context.Ado.GetParameters(parameters));
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5> AddParameters(SugarParameter[] parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(parameters);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5> AddParameters(List<SugarParameter> parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(parameters);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5> AddJoinInfo(string tableName, string shortName, string joinWhere, JoinType type = JoinType.Left)
|
||||
{
|
||||
QueryBuilder.JoinIndex = +1;
|
||||
QueryBuilder.JoinQueryInfos
|
||||
.Add(new JoinQueryInfo()
|
||||
{
|
||||
JoinIndex = QueryBuilder.JoinIndex,
|
||||
TableName = tableName,
|
||||
ShortName = shortName,
|
||||
JoinType = type,
|
||||
JoinWhere = joinWhere
|
||||
});
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5> With(string withString)
|
||||
{
|
||||
base.With(withString);
|
||||
return this;
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
#endregion
|
||||
#region T6
|
||||
@@ -1928,6 +2179,63 @@ namespace SqlSugar
|
||||
return this;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Other
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5,T6> AS<AsT>(string tableName)
|
||||
{
|
||||
var entityName = typeof(AsT).Name;
|
||||
_As(tableName, entityName);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6> AS(string tableName)
|
||||
{
|
||||
var entityName = typeof(T).Name;
|
||||
_As(tableName, entityName);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6> Filter(string FilterName, bool isDisabledGobalFilter = false)
|
||||
{
|
||||
_Filter(FilterName, isDisabledGobalFilter);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6> AddParameters(object parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(Context.Ado.GetParameters(parameters));
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6> AddParameters(SugarParameter[] parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(parameters);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6> AddParameters(List<SugarParameter> parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(parameters);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6> AddJoinInfo(string tableName, string shortName, string joinWhere, JoinType type = JoinType.Left)
|
||||
{
|
||||
QueryBuilder.JoinIndex = +1;
|
||||
QueryBuilder.JoinQueryInfos
|
||||
.Add(new JoinQueryInfo()
|
||||
{
|
||||
JoinIndex = QueryBuilder.JoinIndex,
|
||||
TableName = tableName,
|
||||
ShortName = shortName,
|
||||
JoinType = type,
|
||||
JoinWhere = joinWhere
|
||||
});
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6> With(string withString)
|
||||
{
|
||||
base.With(withString);
|
||||
return this;
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
#endregion
|
||||
#region T7
|
||||
@@ -2180,6 +2488,63 @@ namespace SqlSugar
|
||||
return this;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Other
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6,T7> AS<AsT>(string tableName)
|
||||
{
|
||||
var entityName = typeof(AsT).Name;
|
||||
_As(tableName, entityName);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7> AS(string tableName)
|
||||
{
|
||||
var entityName = typeof(T).Name;
|
||||
_As(tableName, entityName);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7> Filter(string FilterName, bool isDisabledGobalFilter = false)
|
||||
{
|
||||
_Filter(FilterName, isDisabledGobalFilter);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7> AddParameters(object parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(Context.Ado.GetParameters(parameters));
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7> AddParameters(SugarParameter[] parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(parameters);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7> AddParameters(List<SugarParameter> parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(parameters);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7> AddJoinInfo(string tableName, string shortName, string joinWhere, JoinType type = JoinType.Left)
|
||||
{
|
||||
QueryBuilder.JoinIndex = +1;
|
||||
QueryBuilder.JoinQueryInfos
|
||||
.Add(new JoinQueryInfo()
|
||||
{
|
||||
JoinIndex = QueryBuilder.JoinIndex,
|
||||
TableName = tableName,
|
||||
ShortName = shortName,
|
||||
JoinType = type,
|
||||
JoinWhere = joinWhere
|
||||
});
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7> With(string withString)
|
||||
{
|
||||
base.With(withString);
|
||||
return this;
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
#endregion
|
||||
#region T8
|
||||
@@ -2458,6 +2823,63 @@ namespace SqlSugar
|
||||
return this;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Other
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7,T8> AS<AsT>(string tableName)
|
||||
{
|
||||
var entityName = typeof(AsT).Name;
|
||||
_As(tableName, entityName);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8> AS(string tableName)
|
||||
{
|
||||
var entityName = typeof(T).Name;
|
||||
_As(tableName, entityName);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8> Filter(string FilterName, bool isDisabledGobalFilter = false)
|
||||
{
|
||||
_Filter(FilterName, isDisabledGobalFilter);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8> AddParameters(object parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(Context.Ado.GetParameters(parameters));
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8> AddParameters(SugarParameter[] parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(parameters);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8> AddParameters(List<SugarParameter> parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(parameters);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8> AddJoinInfo(string tableName, string shortName, string joinWhere, JoinType type = JoinType.Left)
|
||||
{
|
||||
QueryBuilder.JoinIndex = +1;
|
||||
QueryBuilder.JoinQueryInfos
|
||||
.Add(new JoinQueryInfo()
|
||||
{
|
||||
JoinIndex = QueryBuilder.JoinIndex,
|
||||
TableName = tableName,
|
||||
ShortName = shortName,
|
||||
JoinType = type,
|
||||
JoinWhere = joinWhere
|
||||
});
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8> With(string withString)
|
||||
{
|
||||
base.With(withString);
|
||||
return this;
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
#endregion
|
||||
#region T9
|
||||
@@ -2759,6 +3181,63 @@ namespace SqlSugar
|
||||
return this;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Other
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8,T9> AS<AsT>(string tableName)
|
||||
{
|
||||
var entityName = typeof(AsT).Name;
|
||||
_As(tableName, entityName);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9> AS(string tableName)
|
||||
{
|
||||
var entityName = typeof(T).Name;
|
||||
_As(tableName, entityName);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9> Filter(string FilterName, bool isDisabledGobalFilter = false)
|
||||
{
|
||||
_Filter(FilterName, isDisabledGobalFilter);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9> AddParameters(object parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(Context.Ado.GetParameters(parameters));
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9> AddParameters(SugarParameter[] parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(parameters);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9> AddParameters(List<SugarParameter> parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(parameters);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9> AddJoinInfo(string tableName, string shortName, string joinWhere, JoinType type = JoinType.Left)
|
||||
{
|
||||
QueryBuilder.JoinIndex = +1;
|
||||
QueryBuilder.JoinQueryInfos
|
||||
.Add(new JoinQueryInfo()
|
||||
{
|
||||
JoinIndex = QueryBuilder.JoinIndex,
|
||||
TableName = tableName,
|
||||
ShortName = shortName,
|
||||
JoinType = type,
|
||||
JoinWhere = joinWhere
|
||||
});
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8,T9> With(string withString)
|
||||
{
|
||||
base.With(withString);
|
||||
return this;
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
#endregion
|
||||
#region T10
|
||||
@@ -3084,6 +3563,63 @@ namespace SqlSugar
|
||||
return this;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Other
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9,T10> AS<AsT>(string tableName)
|
||||
{
|
||||
var entityName = typeof(AsT).Name;
|
||||
_As(tableName, entityName);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10> AS(string tableName)
|
||||
{
|
||||
var entityName = typeof(T).Name;
|
||||
_As(tableName, entityName);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10> Filter(string FilterName, bool isDisabledGobalFilter = false)
|
||||
{
|
||||
_Filter(FilterName, isDisabledGobalFilter);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10> AddParameters(object parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(Context.Ado.GetParameters(parameters));
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10> AddParameters(SugarParameter[] parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(parameters);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10> AddParameters(List<SugarParameter> parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(parameters);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10> AddJoinInfo(string tableName, string shortName, string joinWhere, JoinType type = JoinType.Left)
|
||||
{
|
||||
QueryBuilder.JoinIndex = +1;
|
||||
QueryBuilder.JoinQueryInfos
|
||||
.Add(new JoinQueryInfo()
|
||||
{
|
||||
JoinIndex = QueryBuilder.JoinIndex,
|
||||
TableName = tableName,
|
||||
ShortName = shortName,
|
||||
JoinType = type,
|
||||
JoinWhere = joinWhere
|
||||
});
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10> With(string withString)
|
||||
{
|
||||
base.With(withString);
|
||||
return this;
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
#endregion
|
||||
#region T11
|
||||
@@ -3434,6 +3970,63 @@ namespace SqlSugar
|
||||
return this;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Other
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10,T11> AS<AsT>(string tableName)
|
||||
{
|
||||
var entityName = typeof(AsT).Name;
|
||||
_As(tableName, entityName);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> AS(string tableName)
|
||||
{
|
||||
var entityName = typeof(T).Name;
|
||||
_As(tableName, entityName);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Filter(string FilterName, bool isDisabledGobalFilter = false)
|
||||
{
|
||||
_Filter(FilterName, isDisabledGobalFilter);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> AddParameters(object parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(Context.Ado.GetParameters(parameters));
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> AddParameters(SugarParameter[] parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(parameters);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> AddParameters(List<SugarParameter> parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(parameters);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> AddJoinInfo(string tableName, string shortName, string joinWhere, JoinType type = JoinType.Left)
|
||||
{
|
||||
QueryBuilder.JoinIndex = +1;
|
||||
QueryBuilder.JoinQueryInfos
|
||||
.Add(new JoinQueryInfo()
|
||||
{
|
||||
JoinIndex = QueryBuilder.JoinIndex,
|
||||
TableName = tableName,
|
||||
ShortName = shortName,
|
||||
JoinType = type,
|
||||
JoinWhere = joinWhere
|
||||
});
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> With(string withString)
|
||||
{
|
||||
base.With(withString);
|
||||
return this;
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
#endregion
|
||||
#region T12
|
||||
@@ -3809,6 +4402,63 @@ namespace SqlSugar
|
||||
return this;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Other
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,T12> AS<AsT>(string tableName)
|
||||
{
|
||||
var entityName = typeof(AsT).Name;
|
||||
_As(tableName, entityName);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> AS(string tableName)
|
||||
{
|
||||
var entityName = typeof(T).Name;
|
||||
_As(tableName, entityName);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> Filter(string FilterName, bool isDisabledGobalFilter = false)
|
||||
{
|
||||
_Filter(FilterName, isDisabledGobalFilter);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> AddParameters(object parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(Context.Ado.GetParameters(parameters));
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> AddParameters(SugarParameter[] parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(parameters);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> AddParameters(List<SugarParameter> parameters)
|
||||
{
|
||||
if (parameters != null)
|
||||
QueryBuilder.Parameters.AddRange(parameters);
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> AddJoinInfo(string tableName, string shortName, string joinWhere, JoinType type = JoinType.Left)
|
||||
{
|
||||
QueryBuilder.JoinIndex = +1;
|
||||
QueryBuilder.JoinQueryInfos
|
||||
.Add(new JoinQueryInfo()
|
||||
{
|
||||
JoinIndex = QueryBuilder.JoinIndex,
|
||||
TableName = tableName,
|
||||
ShortName = shortName,
|
||||
JoinType = type,
|
||||
JoinWhere = joinWhere
|
||||
});
|
||||
return this;
|
||||
}
|
||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> With(string withString)
|
||||
{
|
||||
base.With(withString);
|
||||
return this;
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
|
@@ -316,7 +316,7 @@ namespace SqlSugar
|
||||
this.JoinTemplate,
|
||||
joinInfo.JoinType.ToString() + UtilConstants.Space,
|
||||
Builder.GetTranslationTableName(joinInfo.TableName) + UtilConstants.Space,
|
||||
joinInfo.ShortName + UtilConstants.Space + joinInfo.TableWithString,
|
||||
joinInfo.ShortName + UtilConstants.Space + TableWithString,
|
||||
joinInfo.JoinWhere);
|
||||
}
|
||||
public virtual void Clear()
|
||||
@@ -375,7 +375,7 @@ namespace SqlSugar
|
||||
{
|
||||
pre = Builder.GetTranslationColumnName(TableShortName) + ".";
|
||||
}
|
||||
reval = string.Join(",", this.Context.EntityProvider.GetEntityInfo(this.EntityType).Columns.Where(it => !it.IsIgnore).Select(it => pre + Builder.GetTranslationColumnName(it.EntityName, it.PropertyName)));
|
||||
reval = string.Join(",", this.Context.EntityMaintenance.GetEntityInfo(this.EntityType).Columns.Where(it => !it.IsIgnore).Select(it => pre + Builder.GetTranslationColumnName(it.EntityName, it.PropertyName)));
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -413,14 +413,14 @@ namespace SqlSugar
|
||||
{
|
||||
var result = Builder.GetTranslationTableName(EntityName);
|
||||
result += UtilConstants.Space;
|
||||
if (this.TableWithString.IsValuable())
|
||||
{
|
||||
result += TableWithString + UtilConstants.Space;
|
||||
}
|
||||
if (this.TableShortName.IsValuable())
|
||||
{
|
||||
result += (TableShortName + UtilConstants.Space);
|
||||
}
|
||||
if (this.TableWithString.IsValuable())
|
||||
{
|
||||
result += TableWithString + UtilConstants.Space;
|
||||
}
|
||||
if (!this.IsSingle())
|
||||
{
|
||||
result += GetJoinValueString + UtilConstants.Space;
|
||||
@@ -468,7 +468,7 @@ namespace SqlSugar
|
||||
|
||||
private string GetTableName(string entityName)
|
||||
{
|
||||
var result = this.Context.EntityProvider.GetTableName(entityName);
|
||||
var result = this.Context.EntityMaintenance.GetTableName(entityName);
|
||||
return this.Builder.GetTranslationTableName(result);
|
||||
}
|
||||
}
|
||||
|
@@ -48,7 +48,7 @@ namespace SqlSugar
|
||||
var entityName = typeof(T).Name;
|
||||
IsAs = true;
|
||||
OldMappingTableList = this.Context.MappingTables;
|
||||
this.Context.MappingTables = this.Context.RewritableMethods.TranslateCopy(this.Context.MappingTables);
|
||||
this.Context.MappingTables = this.Context.Utilities.TranslateCopy(this.Context.MappingTables);
|
||||
this.Context.MappingTables.Add(entityName, tableName);
|
||||
return this; ;
|
||||
}
|
||||
@@ -94,7 +94,7 @@ namespace SqlSugar
|
||||
if (this.WhereColumnList == null) this.WhereColumnList = new List<string>();
|
||||
foreach (var item in whereColumns)
|
||||
{
|
||||
this.WhereColumnList.Add(this.Context.EntityProvider.GetDbColumnName<T>(item));
|
||||
this.WhereColumnList.Add(this.Context.EntityMaintenance.GetDbColumnName<T>(item));
|
||||
}
|
||||
return this;
|
||||
}
|
||||
@@ -284,7 +284,7 @@ namespace SqlSugar
|
||||
}
|
||||
if (this.Context.IsSystemTablesConfig)
|
||||
{
|
||||
return this.Context.DbMaintenance.GetPrimaries(this.Context.EntityProvider.GetTableName(this.EntityInfo.EntityName));
|
||||
return this.Context.DbMaintenance.GetPrimaries(this.Context.EntityMaintenance.GetTableName(this.EntityInfo.EntityName));
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -295,7 +295,7 @@ namespace SqlSugar
|
||||
{
|
||||
if (this.Context.IsSystemTablesConfig)
|
||||
{
|
||||
return this.Context.DbMaintenance.GetIsIdentities(this.Context.EntityProvider.GetTableName(this.EntityInfo.EntityName));
|
||||
return this.Context.DbMaintenance.GetIsIdentities(this.Context.EntityMaintenance.GetTableName(this.EntityInfo.EntityName));
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -311,12 +311,8 @@ namespace SqlSugar
|
||||
}
|
||||
private IUpdateable<T> CopyUpdateable()
|
||||
{
|
||||
var asyncContext = this.Context.CopyContext(this.Context.RewritableMethods.TranslateCopy(this.Context.CurrentConnectionConfig));
|
||||
var asyncContext = this.Context.Utilities.CopyContext(this.Context,true);
|
||||
asyncContext.CurrentConnectionConfig.IsAutoCloseConnection = true;
|
||||
asyncContext.Ado.IsEnableLogEvent = this.Context.Ado.IsEnableLogEvent;
|
||||
asyncContext.Ado.LogEventStarting = this.Context.Ado.LogEventStarting;
|
||||
asyncContext.Ado.LogEventCompleted = this.Context.Ado.LogEventCompleted;
|
||||
asyncContext.Ado.ProcessingEventStartingSQL = this.Context.Ado.ProcessingEventStartingSQL;
|
||||
|
||||
var asyncUpdateable = asyncContext.Updateable<T>(this.UpdateObjs);
|
||||
var asyncUpdateableBuilder = asyncUpdateable.UpdateBuilder;
|
||||
|
@@ -12,6 +12,5 @@ namespace SqlSugar
|
||||
public string ShortName { get; set; }
|
||||
public int JoinIndex { get; set; }
|
||||
public string JoinWhere { get; set; }
|
||||
public string TableWithString { get; set; }
|
||||
}
|
||||
}
|
||||
|
@@ -289,5 +289,10 @@ namespace SqlSugar
|
||||
else
|
||||
return string.Format("{0}.*", shortName);
|
||||
}
|
||||
|
||||
public virtual string MergeString(params string[] strings)
|
||||
{
|
||||
return string.Join("", strings);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -51,5 +51,6 @@ namespace SqlSugar
|
||||
string True();
|
||||
string False();
|
||||
string GuidNew();
|
||||
string MergeString(params string[] strings);
|
||||
}
|
||||
}
|
||||
|
@@ -7,7 +7,7 @@ using System.Threading.Tasks;
|
||||
|
||||
namespace SqlSugar
|
||||
{
|
||||
public class SqlFunc
|
||||
public partial class SqlFunc
|
||||
{
|
||||
public static bool HasNumber(object thisValue)
|
||||
{
|
||||
|
@@ -184,7 +184,8 @@ namespace SqlSugar
|
||||
}
|
||||
public virtual bool IsTranslationText(string name)
|
||||
{
|
||||
return name.Contains(SqlTranslationLeft) && name.Contains(SqlTranslationRight);
|
||||
var result = name.IsContainsIn(SqlTranslationLeft, SqlTranslationRight, UtilConstants.Space, ExpressionConst.LeftParenthesis, ExpressionConst.RightParenthesis);
|
||||
return result;
|
||||
}
|
||||
public virtual string GetTranslationText(string name)
|
||||
{
|
||||
|
@@ -14,13 +14,17 @@ namespace SqlSugar
|
||||
var isLeft = parameter.IsLeft;
|
||||
var isSetTempData = baseParameter.CommonTempData.IsValuable() && baseParameter.CommonTempData.Equals(CommonTempDataType.Result);
|
||||
var expression = base.Expression as MemberExpression;
|
||||
var childExpression = expression.Expression as MemberExpression;
|
||||
var childIsMember = childExpression != null;
|
||||
var isValue = expression.Member.Name == "Value" && expression.Member.DeclaringType.Name == "Nullable`1";
|
||||
var isBool = expression.Type == UtilConstants.BoolType;
|
||||
var isValueBool = isValue && isBool && parameter.BaseExpression == null;
|
||||
var isLength = expression.Member.Name == "Length" && (expression.Expression as MemberExpression).Type == UtilConstants.StringType;
|
||||
var isLength = expression.Member.Name == "Length" && childIsMember && childExpression.Type == UtilConstants.StringType;
|
||||
var isDateValue = expression.Member.Name.IsIn(Enum.GetNames(typeof(DateType))) && (expression.Expression as MemberExpression).Type == UtilConstants.DateType;
|
||||
var isLogicOperator = ExpressionTool.IsLogicOperator(baseParameter.OperatorValue) || baseParameter.OperatorValue.IsNullOrEmpty();
|
||||
var isHasValue = isLogicOperator && expression.Member.Name == "HasValue" && expression.Expression != null && expression.NodeType == ExpressionType.MemberAccess;
|
||||
var isDateTimeNowDate = expression.Member.Name == "Date" && childIsMember && childExpression.Member.Name == "Now";
|
||||
var isDateDate = expression.Member.Name == "Date" && expression.Expression.Type == UtilConstants.DateType;
|
||||
if (isLength)
|
||||
{
|
||||
var oldCommonTempDate = parameter.CommonTempData;
|
||||
@@ -39,11 +43,12 @@ namespace SqlSugar
|
||||
parameter.CommonTempData = oldCommonTempDate;
|
||||
return;
|
||||
}
|
||||
else if (isHasValue) {
|
||||
else if (isHasValue)
|
||||
{
|
||||
parameter.CommonTempData = CommonTempDataType.Result;
|
||||
this.Expression = expression.Expression;
|
||||
this.Start();
|
||||
var methodParamter =new MethodCallExpressionArgs() { IsMember = true, MemberName = parameter.CommonTempData, MemberValue = null };
|
||||
var methodParamter = new MethodCallExpressionArgs() { IsMember = true, MemberName = parameter.CommonTempData, MemberValue = null };
|
||||
var result = this.Context.DbMehtods.HasValue(new MethodCallExpressionModel()
|
||||
{
|
||||
Args = new List<MethodCallExpressionArgs>() {
|
||||
@@ -81,6 +86,42 @@ namespace SqlSugar
|
||||
{
|
||||
expression = expression.Expression as MemberExpression;
|
||||
}
|
||||
else if (isDateDate)
|
||||
{
|
||||
var name = expression.Member.Name;
|
||||
var oldCommonTempDate = parameter.CommonTempData;
|
||||
parameter.CommonTempData = CommonTempDataType.Result;
|
||||
this.Expression = expression.Expression;
|
||||
this.Start();
|
||||
var isConst = parameter.CommonTempData.GetType() == UtilConstants.DateType;
|
||||
if (isConst)
|
||||
{
|
||||
AppendValue(parameter, isLeft, parameter.CommonTempData.ObjToDate().Date);
|
||||
}
|
||||
else
|
||||
{
|
||||
var GetYear = new MethodCallExpressionModel()
|
||||
{
|
||||
Args = new List<MethodCallExpressionArgs>() {
|
||||
new MethodCallExpressionArgs() { IsMember=true, MemberName=parameter.CommonTempData, MemberValue=parameter.CommonTempData },
|
||||
new MethodCallExpressionArgs() { MemberName=DateType.Year, MemberValue=DateType.Year}
|
||||
}
|
||||
};
|
||||
AppendMember(parameter, isLeft, GetToDate(this.Context.DbMehtods.MergeString(
|
||||
this.GetDateValue(parameter.CommonTempData, DateType.Year),
|
||||
"+'-'+",
|
||||
this.GetDateValue(parameter.CommonTempData, DateType.Month),
|
||||
"+'-'+",
|
||||
this.GetDateValue(parameter.CommonTempData, DateType.Day))));
|
||||
}
|
||||
parameter.CommonTempData = oldCommonTempDate;
|
||||
return;
|
||||
}
|
||||
else if (isDateTimeNowDate)
|
||||
{
|
||||
AppendValue(parameter, isLeft, DateTime.Now.Date);
|
||||
return;
|
||||
}
|
||||
else if (expression.Expression != null && expression.Expression.NodeType != ExpressionType.Parameter && !isValueBool)
|
||||
{
|
||||
var value = ExpressionTool.GetMemberValue(expression.Member, expression);
|
||||
@@ -223,5 +264,27 @@ namespace SqlSugar
|
||||
fieldName = Context.GetTranslationColumnName(fieldName);
|
||||
return fieldName;
|
||||
}
|
||||
|
||||
private string GetDateValue(object value, DateType type)
|
||||
{
|
||||
var pars = new MethodCallExpressionModel()
|
||||
{
|
||||
Args = new List<MethodCallExpressionArgs>() {
|
||||
new MethodCallExpressionArgs() { IsMember=true, MemberName=value, MemberValue=value },
|
||||
new MethodCallExpressionArgs() { MemberName=type, MemberValue=type}
|
||||
}
|
||||
};
|
||||
return this.Context.DbMehtods.DateValue(pars);
|
||||
}
|
||||
private string GetToDate(string value)
|
||||
{
|
||||
var pars = new MethodCallExpressionModel()
|
||||
{
|
||||
Args = new List<MethodCallExpressionArgs>() {
|
||||
new MethodCallExpressionArgs() { MemberName=value, MemberValue=value },
|
||||
}
|
||||
};
|
||||
return this.Context.DbMehtods.ToDate(pars);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -140,7 +140,14 @@ namespace SqlSugar
|
||||
model.Args.AddRange(appendArgs);
|
||||
}
|
||||
}
|
||||
parameter.BaseParameter.CommonTempData = GetMdthodValue(name, model);
|
||||
if (parameter.BaseParameter.BaseParameter.BaseParameter==null)
|
||||
{
|
||||
this.Context.Result.Append(GetMdthodValue(name, model));
|
||||
}
|
||||
else
|
||||
{
|
||||
parameter.BaseParameter.CommonTempData = GetMdthodValue(name, model);
|
||||
}
|
||||
}
|
||||
private void Where(ExpressionParameter parameter, bool? isLeft, string name, IEnumerable<Expression> args, MethodCallExpressionModel model, List<MethodCallExpressionArgs> appendArgs = null)
|
||||
{
|
||||
|
@@ -222,6 +222,20 @@ namespace SqlSugar
|
||||
return DeserializeObject<T>(jsonString);
|
||||
}
|
||||
}
|
||||
public SqlSugarClient CopyContext(SqlSugarClient context,bool isCopyEvents=false)
|
||||
{
|
||||
var newClient = new SqlSugarClient(this.TranslateCopy(context.CurrentConnectionConfig));
|
||||
newClient.MappingColumns = this.TranslateCopy(context.MappingColumns);
|
||||
newClient.MappingTables = this.TranslateCopy(context.MappingTables);
|
||||
newClient.IgnoreColumns = this.TranslateCopy(context.IgnoreColumns);
|
||||
if (isCopyEvents) {
|
||||
newClient.Ado.IsEnableLogEvent = context.Ado.IsEnableLogEvent;
|
||||
newClient.Ado.LogEventStarting = context.Ado.LogEventStarting;
|
||||
newClient.Ado.LogEventCompleted = context.Ado.LogEventCompleted;
|
||||
newClient.Ado.ProcessingEventStartingSQL = context.Ado.ProcessingEventStartingSQL;
|
||||
}
|
||||
return newClient;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region DataTable
|
||||
|
@@ -13,6 +13,7 @@ namespace SqlSugar
|
||||
public SqlSugarClient Context { get; set; }
|
||||
public ConnectionConfig CurrentConnectionConfig { get; set; }
|
||||
public Dictionary<string, object> TempItems { get; set; }
|
||||
public bool IsSystemTablesConfig { get { return this.CurrentConnectionConfig.InitKeyType == InitKeyType.SystemTable; } }
|
||||
public Guid ContextID { get; set; }
|
||||
public MappingTableList MappingTables = new MappingTableList();
|
||||
public MappingColumnList MappingColumns = new MappingColumnList();
|
||||
@@ -21,7 +22,7 @@ namespace SqlSugar
|
||||
|
||||
#region Fields
|
||||
protected ISqlBuilder _SqlBuilder;
|
||||
protected EntityProvider _EntityProvider;
|
||||
protected EntityMaintenance _EntityProvider;
|
||||
protected IAdo _Ado;
|
||||
protected ILambdaExpressions _LambdaExpressions;
|
||||
protected IRewritableMethods _RewritableMethods;
|
||||
@@ -97,7 +98,7 @@ namespace SqlSugar
|
||||
public void InitMppingInfo(Type type)
|
||||
{
|
||||
string cacheKey = "Context.InitAttributeMappingTables" + type.FullName;
|
||||
var entityInfo = this.Context.RewritableMethods.GetCacheInstance<EntityInfo>().Func(cacheKey,
|
||||
var entityInfo = this.Context.Utilities.GetCacheInstance<EntityInfo>().Func(cacheKey,
|
||||
(cm, key) =>
|
||||
{
|
||||
var cacheInfo = cm[key];
|
||||
@@ -105,7 +106,7 @@ namespace SqlSugar
|
||||
},
|
||||
(cm, key) =>
|
||||
{
|
||||
var reval = this.Context.EntityProvider.GetEntityInfo(type);
|
||||
var reval = this.Context.EntityMaintenance.GetEntityInfo(type);
|
||||
return reval;
|
||||
});
|
||||
InitMppingInfo(entityInfo);
|
||||
@@ -168,7 +169,7 @@ namespace SqlSugar
|
||||
var reval = new InsertableProvider<T>();
|
||||
var sqlBuilder = InstanceFactory.GetSqlbuilder(this.CurrentConnectionConfig); ;
|
||||
reval.Context = this.Context;
|
||||
reval.EntityInfo = this.Context.EntityProvider.GetEntityInfo<T>();
|
||||
reval.EntityInfo = this.Context.EntityMaintenance.GetEntityInfo<T>();
|
||||
reval.SqlBuilder = sqlBuilder;
|
||||
reval.InsertObjs = insertObjs;
|
||||
sqlBuilder.InsertBuilder = reval.InsertBuilder = InstanceFactory.GetInsertBuilder(this.CurrentConnectionConfig);
|
||||
@@ -195,7 +196,7 @@ namespace SqlSugar
|
||||
var reval = new UpdateableProvider<T>();
|
||||
var sqlBuilder = InstanceFactory.GetSqlbuilder(this.CurrentConnectionConfig); ;
|
||||
reval.Context = this.Context;
|
||||
reval.EntityInfo = this.Context.EntityProvider.GetEntityInfo<T>();
|
||||
reval.EntityInfo = this.Context.EntityMaintenance.GetEntityInfo<T>();
|
||||
reval.SqlBuilder = sqlBuilder;
|
||||
reval.UpdateObjs = UpdateObjs;
|
||||
sqlBuilder.UpdateBuilder = reval.UpdateBuilder = InstanceFactory.GetUpdateBuilder(this.CurrentConnectionConfig);
|
||||
|
@@ -20,6 +20,7 @@ namespace SqlSugar
|
||||
void ExecuteBefore(string sql, SugarParameter[] pars);
|
||||
void ExecuteAfter(string sql, SugarParameter[] pars);
|
||||
|
||||
IDataParameterCollection DataReaderParameters { get; set; }
|
||||
CommandType CommandType { get; set; }
|
||||
bool IsEnableLogEvent { get; set; }
|
||||
Action<string, string> LogEventStarting { get; set; }
|
||||
|
@@ -19,8 +19,9 @@ namespace SqlSugar
|
||||
ISugarQueryable<T> AS(string tableName);
|
||||
ISugarQueryable<T> With(string withString);
|
||||
ISugarQueryable<T> Filter(string FilterName, bool isDisabledGobalFilter= false);
|
||||
ISugarQueryable<T> AddParameters(object pars);
|
||||
ISugarQueryable<T> AddParameters(SugarParameter[] pars);
|
||||
ISugarQueryable<T> AddParameters(object parameters);
|
||||
ISugarQueryable<T> AddParameters(SugarParameter[] parameters);
|
||||
ISugarQueryable<T> AddParameters(List<SugarParameter> parameters);
|
||||
ISugarQueryable<T> AddJoinInfo(string tableName, string shortName, string joinWhere, JoinType type = JoinType.Left);
|
||||
|
||||
ISugarQueryable<T> Where(Expression<Func<T, bool>> expression);
|
||||
@@ -75,6 +76,8 @@ namespace SqlSugar
|
||||
|
||||
int Count();
|
||||
Task<int> CountAsync();
|
||||
int Count(Expression<Func<T, bool>> expression);
|
||||
Task<int> CountAsync(Expression<Func<T, bool>> expression);
|
||||
TResult Max<TResult>(string maxField);
|
||||
Task<TResult> MaxAsync<TResult>(string maxField);
|
||||
TResult Max<TResult>(Expression<Func<T, TResult>> expression);
|
||||
@@ -156,6 +159,17 @@ namespace SqlSugar
|
||||
new ISugarQueryable<T,T2> In<FieldType>(Expression<Func<T, object>> expression, List<FieldType> inValues);
|
||||
new ISugarQueryable<T,T2> In<FieldType>(Expression<Func<T, object>> expression, ISugarQueryable<FieldType> childQueryExpression);
|
||||
#endregion
|
||||
|
||||
#region Other
|
||||
new ISugarQueryable<T,T2> AS<AsT>(string tableName);
|
||||
new ISugarQueryable<T,T2> AS(string tableName);
|
||||
new ISugarQueryable<T,T2> Filter(string FilterName, bool isDisabledGobalFilter = false);
|
||||
new ISugarQueryable<T,T2> AddParameters(object parameters);
|
||||
new ISugarQueryable<T,T2> AddParameters(SugarParameter[] parameters);
|
||||
new ISugarQueryable<T, T2> AddParameters(List<SugarParameter> parameters);
|
||||
new ISugarQueryable<T,T2> AddJoinInfo(string tableName, string shortName, string joinWhere, JoinType type = JoinType.Left);
|
||||
new ISugarQueryable<T,T2> With(string withString);
|
||||
#endregion
|
||||
}
|
||||
public partial interface ISugarQueryable<T, T2, T3> : ISugarQueryable<T>
|
||||
{
|
||||
@@ -201,6 +215,17 @@ namespace SqlSugar
|
||||
new ISugarQueryable<T, T2,T3> In<FieldType>(Expression<Func<T, object>> expression, List<FieldType> inValues);
|
||||
new ISugarQueryable<T, T2,T3> In<FieldType>(Expression<Func<T, object>> expression, ISugarQueryable<FieldType> childQueryExpression);
|
||||
#endregion
|
||||
|
||||
#region Other
|
||||
new ISugarQueryable<T, T2,T3> AS<AsT>(string tableName);
|
||||
new ISugarQueryable<T, T2,T3> AS(string tableName);
|
||||
new ISugarQueryable<T, T2,T3> Filter(string FilterName, bool isDisabledGobalFilter = false);
|
||||
new ISugarQueryable<T, T2,T3> AddParameters(object parameters);
|
||||
new ISugarQueryable<T, T2,T3> AddParameters(SugarParameter[] parameters);
|
||||
new ISugarQueryable<T, T2,T3> AddParameters(List<SugarParameter> parameters);
|
||||
new ISugarQueryable<T, T2,T3> AddJoinInfo(string tableName, string shortName, string joinWhere, JoinType type = JoinType.Left);
|
||||
new ISugarQueryable<T, T2,T3> With(string withString);
|
||||
#endregion
|
||||
}
|
||||
public partial interface ISugarQueryable<T, T2, T3, T4> : ISugarQueryable<T>
|
||||
{
|
||||
@@ -251,6 +276,17 @@ namespace SqlSugar
|
||||
new ISugarQueryable<T, T2, T3,T4> In<FieldType>(Expression<Func<T, object>> expression, List<FieldType> inValues);
|
||||
new ISugarQueryable<T, T2, T3,T4> In<FieldType>(Expression<Func<T, object>> expression, ISugarQueryable<FieldType> childQueryExpression);
|
||||
#endregion
|
||||
|
||||
#region Other
|
||||
new ISugarQueryable<T, T2, T3,T4> AS<AsT>(string tableName);
|
||||
new ISugarQueryable<T, T2, T3,T4> AS(string tableName);
|
||||
new ISugarQueryable<T, T2, T3,T4> Filter(string FilterName, bool isDisabledGobalFilter = false);
|
||||
new ISugarQueryable<T, T2, T3,T4> AddParameters(object parameters);
|
||||
new ISugarQueryable<T, T2, T3,T4> AddParameters(SugarParameter[] parameters);
|
||||
new ISugarQueryable<T, T2, T3,T4> AddParameters(List<SugarParameter> parameters);
|
||||
new ISugarQueryable<T, T2, T3,T4> AddJoinInfo(string tableName, string shortName, string joinWhere, JoinType type = JoinType.Left);
|
||||
new ISugarQueryable<T, T2, T3,T4> With(string withString);
|
||||
#endregion
|
||||
}
|
||||
public partial interface ISugarQueryable<T, T2, T3, T4, T5> : ISugarQueryable<T>
|
||||
{
|
||||
@@ -307,6 +343,17 @@ namespace SqlSugar
|
||||
new ISugarQueryable<T, T2, T3, T4,T5> In<FieldType>(Expression<Func<T, object>> expression, List<FieldType> inValues);
|
||||
new ISugarQueryable<T, T2, T3, T4,T5> In<FieldType>(Expression<Func<T, object>> expression, ISugarQueryable<FieldType> childQueryExpression);
|
||||
#endregion
|
||||
|
||||
#region Other
|
||||
new ISugarQueryable<T, T2, T3, T4,T5> AS<AsT>(string tableName);
|
||||
new ISugarQueryable<T, T2, T3, T4,T5> AS(string tableName);
|
||||
new ISugarQueryable<T, T2, T3, T4,T5> Filter(string FilterName, bool isDisabledGobalFilter = false);
|
||||
new ISugarQueryable<T, T2, T3, T4,T5> AddParameters(object parameters);
|
||||
new ISugarQueryable<T, T2, T3, T4,T5> AddParameters(SugarParameter[] parameters);
|
||||
new ISugarQueryable<T, T2, T3, T4,T5> AddParameters(List<SugarParameter> parameters);
|
||||
new ISugarQueryable<T, T2, T3, T4,T5> AddJoinInfo(string tableName, string shortName, string joinWhere, JoinType type = JoinType.Left);
|
||||
new ISugarQueryable<T, T2, T3, T4,T5> With(string withString);
|
||||
#endregion
|
||||
}
|
||||
public partial interface ISugarQueryable<T, T2, T3, T4, T5, T6> : ISugarQueryable<T>
|
||||
{
|
||||
@@ -367,6 +414,17 @@ namespace SqlSugar
|
||||
new ISugarQueryable<T, T2, T3, T4,T5,T6> In<FieldType>(Expression<Func<T, object>> expression, List<FieldType> inValues);
|
||||
new ISugarQueryable<T, T2, T3, T4,T5,T6> In<FieldType>(Expression<Func<T, object>> expression, ISugarQueryable<FieldType> childQueryExpression);
|
||||
#endregion
|
||||
|
||||
#region Other
|
||||
new ISugarQueryable<T, T2, T3, T4, T5,T6> AS<AsT>(string tableName);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5,T6> AS(string tableName);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5,T6> Filter(string FilterName, bool isDisabledGobalFilter = false);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5,T6> AddParameters(object parameters);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5,T6> AddParameters(SugarParameter[] parameters);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5,T6> AddParameters(List<SugarParameter> parameters);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5,T6> AddJoinInfo(string tableName, string shortName, string joinWhere, JoinType type = JoinType.Left);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5,T6> With(string withString);
|
||||
#endregion
|
||||
}
|
||||
public partial interface ISugarQueryable<T, T2, T3, T4, T5, T6, T7> : ISugarQueryable<T>
|
||||
{
|
||||
@@ -432,6 +490,17 @@ namespace SqlSugar
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6,T7> In<FieldType>(Expression<Func<T, object>> expression, List<FieldType> inValues);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6,T7> In<FieldType>(Expression<Func<T, object>> expression, ISugarQueryable<FieldType> childQueryExpression);
|
||||
#endregion
|
||||
|
||||
#region Other
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6,T7> AS<AsT>(string tableName);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6,T7> AS(string tableName);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6,T7> Filter(string FilterName, bool isDisabledGobalFilter = false);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6,T7> AddParameters(object parameters);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6,T7> AddParameters(SugarParameter[] parameters);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6,T7> AddParameters(List<SugarParameter> parameters);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6,T7> AddJoinInfo(string tableName, string shortName, string joinWhere, JoinType type = JoinType.Left);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6,T7> With(string withString);
|
||||
#endregion
|
||||
}
|
||||
public partial interface ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8> : ISugarQueryable<T>
|
||||
{
|
||||
@@ -502,6 +571,17 @@ namespace SqlSugar
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7,T8> In<FieldType>(Expression<Func<T, object>> expression, List<FieldType> inValues);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7,T8> In<FieldType>(Expression<Func<T, object>> expression, ISugarQueryable<FieldType> childQueryExpression);
|
||||
#endregion
|
||||
|
||||
#region Other
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7,T8> AS<AsT>(string tableName);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7,T8> AS(string tableName);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7,T8> Filter(string FilterName, bool isDisabledGobalFilter = false);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7,T8> AddParameters(object parameters);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7,T8> AddParameters(SugarParameter[] parameters);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7,T8> AddParameters(List<SugarParameter> parameters);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7,T8> AddJoinInfo(string tableName, string shortName, string joinWhere, JoinType type = JoinType.Left);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7,T8> With(string withString);
|
||||
#endregion
|
||||
}
|
||||
|
||||
#region 9-12
|
||||
@@ -579,6 +659,17 @@ namespace SqlSugar
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8,T9> In<FieldType>(Expression<Func<T, object>> expression, List<FieldType> inValues);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8,T9> In<FieldType>(Expression<Func<T, object>> expression, ISugarQueryable<FieldType> childQueryExpression);
|
||||
#endregion
|
||||
|
||||
#region Other
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8,T9> AS<AsT>(string tableName);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8,T9> AS(string tableName);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8,T9> Filter(string FilterName, bool isDisabledGobalFilter = false);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8,T9> AddParameters(object parameters);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8,T9> AddParameters(SugarParameter[] parameters);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8,T9> AddParameters(List<SugarParameter> parameters);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8,T9> AddJoinInfo(string tableName, string shortName, string joinWhere, JoinType type = JoinType.Left);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8,T9> With(string withString);
|
||||
#endregion
|
||||
}
|
||||
public partial interface ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8,T9,T10> : ISugarQueryable<T>
|
||||
{
|
||||
@@ -659,6 +750,17 @@ namespace SqlSugar
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9,T10> In<FieldType>(Expression<Func<T, object>> expression, List<FieldType> inValues);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9,T10> In<FieldType>(Expression<Func<T, object>> expression, ISugarQueryable<FieldType> childQueryExpression);
|
||||
#endregion
|
||||
|
||||
#region Other
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9,T10> AS<AsT>(string tableName);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9,T10> AS(string tableName);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9,T10> Filter(string FilterName, bool isDisabledGobalFilter = false);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9,T10> AddParameters(object parameters);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9,T10> AddParameters(SugarParameter[] parameters);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9,T10> AddParameters(List<SugarParameter> parameters);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9,T10> AddJoinInfo(string tableName, string shortName, string joinWhere, JoinType type = JoinType.Left);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9,T10> With(string withString);
|
||||
#endregion
|
||||
}
|
||||
public partial interface ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8,T9,T10,T11> : ISugarQueryable<T>
|
||||
{
|
||||
@@ -744,6 +846,17 @@ namespace SqlSugar
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10,T11> In<FieldType>(Expression<Func<T, object>> expression, List<FieldType> inValues);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10,T11> In<FieldType>(Expression<Func<T, object>> expression, ISugarQueryable<FieldType> childQueryExpression);
|
||||
#endregion
|
||||
|
||||
#region Other
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10,T11> AS<AsT>(string tableName);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10,T11> AS(string tableName);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10,T11> Filter(string FilterName, bool isDisabledGobalFilter = false);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10,T11> AddParameters(object parameters);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10,T11> AddParameters(SugarParameter[] parameters);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10,T11> AddParameters(List<SugarParameter> parameters);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10,T11> AddJoinInfo(string tableName, string shortName, string joinWhere, JoinType type = JoinType.Left);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10,T11> With(string withString);
|
||||
#endregion
|
||||
}
|
||||
public partial interface ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8,T9,T10,T11,T12> : ISugarQueryable<T>
|
||||
{
|
||||
@@ -834,6 +947,17 @@ namespace SqlSugar
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,T12> In<FieldType>(Expression<Func<T, object>> expression, List<FieldType> inValues);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,T12> In<FieldType>(Expression<Func<T, object>> expression, ISugarQueryable<FieldType> childQueryExpression);
|
||||
#endregion
|
||||
|
||||
#region Other
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,T12> AS<AsT>(string tableName);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,T12> AS(string tableName);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,T12> Filter(string FilterName, bool isDisabledGobalFilter = false);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,T12> AddParameters(object parameters);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,T12> AddParameters(SugarParameter[] parameters);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,T12> AddParameters(List<SugarParameter> parameters);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,T12> AddJoinInfo(string tableName, string shortName, string joinWhere, JoinType type = JoinType.Left);
|
||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,T12> With(string withString);
|
||||
#endregion ,T12
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
|
@@ -16,6 +16,7 @@ namespace SqlSugar
|
||||
string SerializeObject(object value);
|
||||
T DeserializeObject<T>(string value);
|
||||
T TranslateCopy<T>(T sourceObject);
|
||||
SqlSugarClient CopyContext(SqlSugarClient context, bool isCopyEvents = false);
|
||||
dynamic DataTableToDynamic(DataTable table);
|
||||
ICacheManager<T> GetCacheInstance<T>();
|
||||
void RemoveCacheAll();
|
||||
|
@@ -119,6 +119,9 @@ namespace SqlSugar
|
||||
var parameter = model.Args[0];
|
||||
return string.Format(" LENGTH({0})", parameter.MemberName);
|
||||
}
|
||||
|
||||
public override string MergeString(params string[] strings)
|
||||
{
|
||||
return " concat("+string.Join(",", strings).Replace("+", "") + ") ";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -191,5 +191,10 @@ namespace SqlSugar
|
||||
}
|
||||
return string.Format(" Cast((JulianDay({0}) - JulianDay({1})) *{2} As INTEGER)", parameter, parameter2, time);
|
||||
}
|
||||
|
||||
public override string MergeString(params string[] strings)
|
||||
{
|
||||
return string.Join("||", strings).Replace("+","");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -16,16 +16,7 @@ namespace SqlSugar
|
||||
/// </summary>
|
||||
public partial class SqlSugarClient : SqlSugarAccessory, IDisposable
|
||||
{
|
||||
#region Properties
|
||||
public bool IsSystemTablesConfig
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.CurrentConnectionConfig.InitKeyType == InitKeyType.SystemTable;
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
|
||||
#region Constructor
|
||||
public SqlSugarClient(ConnectionConfig config)
|
||||
{
|
||||
@@ -59,24 +50,22 @@ namespace SqlSugar
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Rewritable Methods
|
||||
/// <summary>
|
||||
/// Rewritable Methods
|
||||
/// </summary>
|
||||
#region Util Methods
|
||||
[Obsolete("Use SqlSugarClient.Utilities")]
|
||||
public virtual IRewritableMethods RewritableMethods
|
||||
{
|
||||
get { return this.Utilities; }
|
||||
set { this.Utilities = value; }
|
||||
}
|
||||
public virtual IRewritableMethods Utilities
|
||||
{
|
||||
get
|
||||
{
|
||||
if (base._RewritableMethods == null)
|
||||
{
|
||||
base._RewritableMethods = new RewritableMethods();
|
||||
}
|
||||
return _RewritableMethods;
|
||||
}
|
||||
set
|
||||
{
|
||||
base._RewritableMethods = value;
|
||||
}
|
||||
set { base._RewritableMethods = value; }
|
||||
}
|
||||
#endregion
|
||||
|
||||
@@ -152,7 +141,7 @@ namespace SqlSugar
|
||||
}
|
||||
public virtual ISugarQueryable<T, T2, T3, T4, T5, T6, T7> Queryable<T, T2, T3, T4, T5, T6, T7>(Expression<Func<T, T2, T3, T4, T5, T6, T7, object[]>> joinExpression) where T : class, new()
|
||||
{
|
||||
InitMppingInfo<T, T2, T3, T4, T5, T6,T7>();
|
||||
InitMppingInfo<T, T2, T3, T4, T5, T6, T7>();
|
||||
var types = new Type[] { typeof(T2), typeof(T3), typeof(T4), typeof(T5), typeof(T6), typeof(T7) };
|
||||
var queryable = InstanceFactory.GetQueryable<T, T2, T3, T4, T5, T6, T7>(base.CurrentConnectionConfig);
|
||||
base.CreateQueryJoin(joinExpression, types, queryable);
|
||||
@@ -160,7 +149,7 @@ namespace SqlSugar
|
||||
}
|
||||
public virtual ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8> Queryable<T, T2, T3, T4, T5, T6, T7, T8>(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, object[]>> joinExpression) where T : class, new()
|
||||
{
|
||||
InitMppingInfo<T, T2, T3, T4, T5, T6,T7, T8>();
|
||||
InitMppingInfo<T, T2, T3, T4, T5, T6, T7, T8>();
|
||||
var types = new Type[] { typeof(T2), typeof(T3), typeof(T4), typeof(T5), typeof(T6), typeof(T7), typeof(T8) };
|
||||
var queryable = InstanceFactory.GetQueryable<T, T2, T3, T4, T5, T6, T7, T8>(base.CurrentConnectionConfig);
|
||||
base.CreateQueryJoin(joinExpression, types, queryable);
|
||||
@@ -169,7 +158,7 @@ namespace SqlSugar
|
||||
#region 9-12
|
||||
public virtual ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9> Queryable<T, T2, T3, T4, T5, T6, T7, T8, T9>(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, object[]>> joinExpression) where T : class, new()
|
||||
{
|
||||
InitMppingInfo<T, T2, T3, T4, T5, T6,T7, T8, T9>();
|
||||
InitMppingInfo<T, T2, T3, T4, T5, T6, T7, T8, T9>();
|
||||
var types = new Type[] { typeof(T2), typeof(T3), typeof(T4), typeof(T5), typeof(T6), typeof(T7), typeof(T8), typeof(T9) };
|
||||
var queryable = InstanceFactory.GetQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9>(base.CurrentConnectionConfig);
|
||||
base.CreateQueryJoin(joinExpression, types, queryable);
|
||||
@@ -177,7 +166,7 @@ namespace SqlSugar
|
||||
}
|
||||
public virtual ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10> Queryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10>(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, object[]>> joinExpression) where T : class, new()
|
||||
{
|
||||
InitMppingInfo<T, T2, T3, T4, T5, T6, T7,T8, T9, T10>();
|
||||
InitMppingInfo<T, T2, T3, T4, T5, T6, T7, T8, T9, T10>();
|
||||
var types = new Type[] { typeof(T2), typeof(T3), typeof(T4), typeof(T5), typeof(T6), typeof(T7), typeof(T8), typeof(T9), typeof(T10) };
|
||||
var queryable = InstanceFactory.GetQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10>(base.CurrentConnectionConfig);
|
||||
base.CreateQueryJoin(joinExpression, types, queryable);
|
||||
@@ -185,7 +174,7 @@ namespace SqlSugar
|
||||
}
|
||||
public virtual ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Queryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, object[]>> joinExpression) where T : class, new()
|
||||
{
|
||||
InitMppingInfo<T, T2, T3, T4, T5, T6,T7, T8, T9, T10, T11>();
|
||||
InitMppingInfo<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>();
|
||||
var types = new Type[] { typeof(T2), typeof(T3), typeof(T4), typeof(T5), typeof(T6), typeof(T7), typeof(T8), typeof(T9), typeof(T10), typeof(T11) };
|
||||
var queryable = InstanceFactory.GetQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(base.CurrentConnectionConfig);
|
||||
base.CreateQueryJoin(joinExpression, types, queryable);
|
||||
@@ -193,7 +182,7 @@ namespace SqlSugar
|
||||
}
|
||||
public virtual ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> Queryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, object[]>> joinExpression) where T : class, new()
|
||||
{
|
||||
InitMppingInfo<T, T2, T3, T4, T5, T6,T7, T8, T9, T10, T11, T12>();
|
||||
InitMppingInfo<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>();
|
||||
var types = new Type[] { typeof(T2), typeof(T3), typeof(T4), typeof(T5), typeof(T6), typeof(T7), typeof(T8), typeof(T9), typeof(T10), typeof(T11), typeof(T12) };
|
||||
var queryable = InstanceFactory.GetQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(base.CurrentConnectionConfig);
|
||||
base.CreateQueryJoin(joinExpression, types, queryable);
|
||||
@@ -352,7 +341,7 @@ namespace SqlSugar
|
||||
{
|
||||
InitMppingInfo<T>();
|
||||
Check.Exception(columnDictionary == null || columnDictionary.Count == 0, "Insertable.columnDictionary can't be null");
|
||||
var insertObject = this.RewritableMethods.DeserializeObject<T>(this.RewritableMethods.SerializeObject(columnDictionary));
|
||||
var insertObject = this.Utilities.DeserializeObject<T>(this.Utilities.SerializeObject(columnDictionary));
|
||||
var columns = columnDictionary.Select(it => it.Key).ToList();
|
||||
return this.Insertable(insertObject).InsertColumns(it => columns.Any(c => it.Equals(c, StringComparison.CurrentCultureIgnoreCase))); ;
|
||||
}
|
||||
@@ -367,7 +356,7 @@ namespace SqlSugar
|
||||
{
|
||||
var columns = ((object)insertDynamicObject).GetType().GetProperties().Select(it => it.Name).ToList();
|
||||
Check.Exception(columns.IsNullOrEmpty(), "Insertable.updateDynamicObject can't be null");
|
||||
T insertObject = this.RewritableMethods.DeserializeObject<T>(this.RewritableMethods.SerializeObject(insertDynamicObject));
|
||||
T insertObject = this.Utilities.DeserializeObject<T>(this.Utilities.SerializeObject(insertDynamicObject));
|
||||
return this.Insertable(insertObject).InsertColumns(it => columns.Any(c => it.Equals(c, StringComparison.CurrentCultureIgnoreCase)));
|
||||
}
|
||||
}
|
||||
@@ -436,7 +425,7 @@ namespace SqlSugar
|
||||
{
|
||||
InitMppingInfo<T>();
|
||||
Check.Exception(columnDictionary == null || columnDictionary.Count == 0, "Updateable.columnDictionary can't be null");
|
||||
var updateObject = this.RewritableMethods.DeserializeObject<T>(this.RewritableMethods.SerializeObject(columnDictionary));
|
||||
var updateObject = this.Utilities.DeserializeObject<T>(this.Utilities.SerializeObject(columnDictionary));
|
||||
var columns = columnDictionary.Select(it => it.Key).ToList();
|
||||
return this.Updateable(updateObject).UpdateColumns(it => columns.Any(c => it.Equals(c, StringComparison.CurrentCultureIgnoreCase))); ;
|
||||
}
|
||||
@@ -451,7 +440,7 @@ namespace SqlSugar
|
||||
{
|
||||
var columns = ((object)updateDynamicObject).GetType().GetProperties().Select(it => it.Name).ToList();
|
||||
Check.Exception(columns.IsNullOrEmpty(), "Updateable.updateDynamicObject can't be null");
|
||||
T updateObject = this.RewritableMethods.DeserializeObject<T>(this.RewritableMethods.SerializeObject(updateDynamicObject));
|
||||
T updateObject = this.Utilities.DeserializeObject<T>(this.Utilities.SerializeObject(updateDynamicObject));
|
||||
return this.Updateable(updateObject).UpdateColumns(it => columns.Any(c => it.Equals(c, StringComparison.CurrentCultureIgnoreCase))); ;
|
||||
}
|
||||
}
|
||||
@@ -499,21 +488,24 @@ namespace SqlSugar
|
||||
#endregion
|
||||
|
||||
#region Entity Methods
|
||||
public virtual EntityProvider EntityProvider
|
||||
[Obsolete("Use SqlSugarClient.EntityMaintenance")]
|
||||
public virtual EntityMaintenance EntityProvider
|
||||
{
|
||||
get { return this.EntityMaintenance; }
|
||||
set { this.EntityMaintenance = value; }
|
||||
}
|
||||
public virtual EntityMaintenance EntityMaintenance
|
||||
{
|
||||
get
|
||||
{
|
||||
if (base._EntityProvider == null)
|
||||
{
|
||||
base._EntityProvider = new EntityProvider();
|
||||
base._EntityProvider = new EntityMaintenance();
|
||||
base._EntityProvider.Context = this;
|
||||
}
|
||||
return _EntityProvider;
|
||||
}
|
||||
set
|
||||
{
|
||||
base._EntityProvider = value;
|
||||
}
|
||||
set { base._EntityProvider = value; }
|
||||
}
|
||||
#endregion
|
||||
|
||||
@@ -529,10 +521,7 @@ namespace SqlSugar
|
||||
}
|
||||
return _QueryFilterProvider;
|
||||
}
|
||||
set
|
||||
{
|
||||
base._QueryFilterProvider = value;
|
||||
}
|
||||
set { base._QueryFilterProvider = value; }
|
||||
}
|
||||
#endregion
|
||||
|
||||
@@ -542,9 +531,7 @@ namespace SqlSugar
|
||||
get
|
||||
{
|
||||
if (_SimpleClient == null)
|
||||
{
|
||||
_SimpleClient = new SimpleClient(this);
|
||||
}
|
||||
return _SimpleClient;
|
||||
}
|
||||
}
|
||||
@@ -554,24 +541,12 @@ namespace SqlSugar
|
||||
public virtual void Close()
|
||||
{
|
||||
if (this.Ado != null)
|
||||
{
|
||||
this.Ado.Close();
|
||||
}
|
||||
}
|
||||
public virtual void Dispose()
|
||||
{
|
||||
if (this.Ado != null)
|
||||
{
|
||||
this.Ado.Dispose();
|
||||
}
|
||||
}
|
||||
internal SqlSugarClient CopyContext(ConnectionConfig config)
|
||||
{
|
||||
var newClient = new SqlSugarClient(config);
|
||||
newClient.MappingColumns = this.Context.MappingColumns;
|
||||
newClient.MappingTables = this.Context.MappingTables;
|
||||
newClient.IgnoreColumns = this.Context.IgnoreColumns;
|
||||
return newClient;
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
|
@@ -24,7 +24,7 @@ namespace SqlSugar
|
||||
var parsStr = string.Empty; ;
|
||||
if (pars != null)
|
||||
{
|
||||
parsStr = context.RewritableMethods.SerializeObject(pars);
|
||||
parsStr = context.Utilities.SerializeObject(pars);
|
||||
}
|
||||
var reval = GetLineMessage("message", message) + GetLineMessage("function", parsStr);
|
||||
return reval;
|
||||
|
Binary file not shown.
Reference in New Issue
Block a user