mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-04-05 17:37:58 +08:00
Code optimization
This commit is contained in:
parent
b4ff8c3513
commit
1a42cbb1cf
@ -46,14 +46,14 @@ namespace OrmTest.Demo
|
||||
var db = GetInstance();
|
||||
//propertyName is valid
|
||||
string propertyName = "Id";
|
||||
string dbColumnName = db.EntityProvider.GetDbColumnName<Student>(propertyName);
|
||||
string dbColumnName = db.EntityMaintenance.GetDbColumnName<Student>(propertyName);
|
||||
var list = db.Queryable<Student>().OrderBy(dbColumnName).ToList();
|
||||
|
||||
//propertyName is invalid
|
||||
try
|
||||
{
|
||||
propertyName = "Id'";
|
||||
dbColumnName = db.EntityProvider.GetDbColumnName<Student>(propertyName);
|
||||
dbColumnName = db.EntityMaintenance.GetDbColumnName<Student>(propertyName);
|
||||
var list2 = db.Queryable<Student>().OrderBy(dbColumnName).ToList();
|
||||
}
|
||||
catch (Exception ex)
|
||||
|
@ -32,14 +32,14 @@ namespace OrmTest.Demo
|
||||
var db = GetInstance();
|
||||
//propertyName is valid
|
||||
string propertyName = "Id";
|
||||
string dbColumnName = db.EntityProvider.GetDbColumnName<Student>(propertyName);
|
||||
string dbColumnName = db.EntityMaintenance.GetDbColumnName<Student>(propertyName);
|
||||
var list = db.Queryable<Student>().OrderBy(dbColumnName).ToList();
|
||||
|
||||
//propertyName is invalid
|
||||
try
|
||||
{
|
||||
propertyName = "Id'";
|
||||
dbColumnName = db.EntityProvider.GetDbColumnName<Student>(propertyName);
|
||||
dbColumnName = db.EntityMaintenance.GetDbColumnName<Student>(propertyName);
|
||||
var list2 = db.Queryable<Student>().OrderBy(dbColumnName).ToList();
|
||||
}
|
||||
catch (Exception ex)
|
||||
|
@ -44,14 +44,14 @@ namespace OrmTest.Demo
|
||||
var db = GetInstance();
|
||||
//propertyName is valid
|
||||
string propertyName = "Id";
|
||||
string dbColumnName = db.EntityProvider.GetDbColumnName<Student>(propertyName);
|
||||
string dbColumnName = db.EntityMaintenance.GetDbColumnName<Student>(propertyName);
|
||||
var list = db.Queryable<Student>().OrderBy(dbColumnName).ToList();
|
||||
|
||||
//propertyName is invalid
|
||||
try
|
||||
{
|
||||
propertyName = "Id'";
|
||||
dbColumnName = db.EntityProvider.GetDbColumnName<Student>(propertyName);
|
||||
dbColumnName = db.EntityMaintenance.GetDbColumnName<Student>(propertyName);
|
||||
var list2 = db.Queryable<Student>().OrderBy(dbColumnName).ToList();
|
||||
}
|
||||
catch (Exception ex)
|
||||
|
@ -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)
|
||||
{
|
||||
|
@ -138,7 +138,7 @@ namespace SqlSugar
|
||||
{
|
||||
var columns = this.Context.DbMaintenance.GetColumnInfosByTableName(tableInfo.Name);
|
||||
if (this.Context.IgnoreColumns.IsValuable()) {
|
||||
var entityName = this.Context.EntityProvider.GetEntityName(tableInfo.Name);
|
||||
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();
|
||||
|
@ -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();
|
||||
@ -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
|
||||
{
|
||||
|
@ -7,7 +7,7 @@ using System.Threading.Tasks;
|
||||
|
||||
namespace SqlSugar
|
||||
{
|
||||
public class EntityProvider
|
||||
public class EntityMaintenance
|
||||
{
|
||||
public SqlSugarClient Context { get; set; }
|
||||
|
@ -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()
|
||||
@ -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
|
||||
{
|
||||
|
@ -37,7 +37,7 @@ namespace SqlSugar
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.Context.EntityProvider.GetEntityInfo<T>();
|
||||
return this.Context.EntityMaintenance.GetEntityInfo<T>();
|
||||
}
|
||||
}
|
||||
public void Clear()
|
||||
@ -983,7 +983,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
|
||||
{
|
||||
|
@ -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
|
||||
{
|
||||
@ -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);
|
||||
}
|
||||
}
|
||||
|
@ -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
|
||||
{
|
||||
|
@ -22,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;
|
||||
@ -106,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);
|
||||
@ -169,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);
|
||||
@ -196,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);
|
||||
|
@ -67,7 +67,7 @@
|
||||
<Compile Include="Abstract\DbMaintenanceProvider\Methods.cs" />
|
||||
<Compile Include="Abstract\DbMaintenanceProvider\Properties.cs" />
|
||||
<Compile Include="Abstract\AdoProvider\AdoProvider.cs" />
|
||||
<Compile Include="Abstract\EntityProvider\EntityProvider.cs" />
|
||||
<Compile Include="Abstract\EntityMaintenance\EntityMaintenance.cs" />
|
||||
<Compile Include="Abstract\FilterProvider\FilterProvider.cs" />
|
||||
<Compile Include="Abstract\InsertableProvider\InsertableProvider.cs" />
|
||||
<Compile Include="Abstract\DeleteProvider\DeleteableProvider.cs" />
|
||||
|
@ -488,13 +488,19 @@ 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;
|
||||
|
@ -32,14 +32,14 @@ namespace OrmTest.Demo
|
||||
var db = GetInstance();
|
||||
//propertyName is valid
|
||||
string propertyName = "Id";
|
||||
string dbColumnName = db.EntityProvider.GetDbColumnName<Student>(propertyName);
|
||||
string dbColumnName = db.EntityMaintenance.GetDbColumnName<Student>(propertyName);
|
||||
var list = db.Queryable<Student>().OrderBy(dbColumnName).ToList();
|
||||
|
||||
//propertyName is invalid
|
||||
try
|
||||
{
|
||||
propertyName = "Id'";
|
||||
dbColumnName = db.EntityProvider.GetDbColumnName<Student>(propertyName);
|
||||
dbColumnName = db.EntityMaintenance.GetDbColumnName<Student>(propertyName);
|
||||
var list2 = db.Queryable<Student>().OrderBy(dbColumnName).ToList();
|
||||
}
|
||||
catch (Exception ex)
|
||||
|
Loading…
Reference in New Issue
Block a user