This commit is contained in:
sunkaixuan 2017-04-09 14:39:08 +08:00
parent 9ade137290
commit 40f93b2109
17 changed files with 219 additions and 56 deletions

View File

@ -14,12 +14,9 @@ namespace OrmTest.Models
[SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnName = "ID")] [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnName = "ID")]
public int Id { get; set; } public int Id { get; set; }
public string Name { get; set; } public string Name { get; set; }
[SugarColumn(IsIgnore = true)]
public int SchoolId { get; set; } public int SchoolId { get; set; }
public DateTime CreateTime { get; set; } public DateTime CreateTime { get; set; }
[SugarColumn(IsIgnore=true)]
[SugarColumn(MappingKeys = "id,SchoolId")]
public virtual School School { get; set; }
public int TestId { get; set; } public int TestId { get; set; }
} }
} }

View File

@ -35,29 +35,26 @@ namespace OrmTest.UnitTest
Console.WriteLine(sql + " " + pars); Console.WriteLine(sql + " " + pars);
}; };
#region dr ot entity
db.IgnoreComumns.Add("TestId", "Student");
var dr2 = db.Queryable<Student>().Select(it => new { newid = it.Id, obj = it }).ToList();
var dr1 = db.Queryable<Student>().Select(it => new { newid = it.Id }).ToList();
var x=db.RewritableMethods.SerializeObject(new { newid = 1, obj = new School() { Id = 1 } });
#endregion
#region sql and parameters validate
var l1 = db.Queryable<School, School>((st, st2) => new object[] { var l1 = db.Queryable<School, School>((st, st2) => new object[] {
JoinType.Left,st.Id==st2.Id JoinType.Left,st.Id==st2.Id
}) })
.Where(st => st.Id > 0) .Where(st => st.Id > 0)
.Select<School, School, dynamic>((st, st2) => new {stid = st.Id, scId = st2.Id,xx=st }).ToSql(); .Select<School, School, dynamic>((st, st2) => new { stid = st.Id, scId = st2.Id, xx = st }).ToSql();
base.Check("SELECT [st].[Id] AS [stid] , [st2].[Id] AS [scId] , [st].[Id] AS [xx_Id] , [st].[Name] AS [xx_Name] FROM [School] st Left JOIN School st2 ON ( [st].[Id] = [st2].[Id] ) WHERE ( [st].[Id] > @Id0 )" base.Check("SELECT [st].[Id] AS [stid] , [st2].[Id] AS [scId] , [st].[Id] AS [xx_Id] , [st].[Name] AS [xx_Name] FROM [School] st Left JOIN School st2 ON ( [st].[Id] = [st2].[Id] ) WHERE ( [st].[Id] > @Id0 )"
, new List<SugarParameter>() { , new List<SugarParameter>() {
new SugarParameter("@Id0",0) new SugarParameter("@Id0",0)
},l1.Key,l1.Value, "l1错误"); }, l1.Key, l1.Value, "l1错误");
var l2 = db.Queryable<School, School>((st, st2) => new object[] {
JoinType.Left,st.Id==st2.Id
}).Where<Student, School>((st, st2) => st2.Id > 2)
.Select(st => new ViewModelStudent { School = st }).ToSql();
base.Check("SELECT [st].[Id] AS [School_Id] , [st].[Name] AS [School_Name] FROM [School] st Left JOIN School st2 ON ( [st].[Id] = [st2].[Id] ) WHERE ( [st2].[Id] > @Id0 )",
new List<SugarParameter>() { new SugarParameter("@Id0", 2) },
l2.Key,
l2.Value,
"l2报错"
);
var list2 = db.Queryable<Student>() var list2 = db.Queryable<Student>()
.Where(st => st.Id > 0) .Where(st => st.Id > 0)
@ -81,6 +78,9 @@ namespace OrmTest.UnitTest
.Where("st.id>@id") .Where("st.id>@id")
.AddParameters(new { id = 1 }) .AddParameters(new { id = 1 })
.Select("st.*").ToList(); .Select("st.*").ToList();
#endregion
} }
} }

View File

@ -1,5 +1,4 @@
using Newtonsoft.Json; using System;
using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Data; using System.Data;
using System.Data.SqlClient; using System.Data.SqlClient;
@ -282,7 +281,7 @@ namespace SqlSugar
} }
else else
{ {
action(sql, JsonConvert.SerializeObject(pars.Select(it => new { key = it.ParameterName, value = it.Value.ObjToString() }))); action(sql,this.Context.RewritableMethods.SerializeObject(pars.Select(it => new { key = it.ParameterName, value = it.Value.ObjToString() })));
} }
} }
} }

View File

@ -351,8 +351,16 @@ namespace SqlSugar
var sqlObj =this.ToSql(); var sqlObj =this.ToSql();
using (var dataReader = this.Db.GetDataReader(sqlObj.Key, sqlObj.Value.ToArray())) using (var dataReader = this.Db.GetDataReader(sqlObj.Key, sqlObj.Value.ToArray()))
{ {
var reval = this.Bind.DataReaderToList<T>(typeof(T), dataReader, SqlBuilder.LambadaQueryBuilder.SelectCacheKey); var tType = typeof(T);
return reval; if (tType.IsAnonymousType())
{
return this.Context.RewritableMethods.DataReaderToDynamicList<T>(dataReader);
}
else
{
var reval = this.Bind.DataReaderToList<T>(tType, dataReader, SqlBuilder.LambadaQueryBuilder.SelectCacheKey);
return reval;
}
} }
} }
public string ToJson() public string ToJson()
@ -410,14 +418,14 @@ namespace SqlSugar
type = ResolveExpressType.WhereMultiple; type = ResolveExpressType.WhereMultiple;
} }
ILambdaExpressions resolveExpress = this.SqlBuilder.LambadaQueryBuilder.LambdaExpressions; ILambdaExpressions resolveExpress = this.SqlBuilder.LambadaQueryBuilder.LambdaExpressions;
resolveExpress.IgnoreComumnList = this.Context.IgnoreComumns;
resolveExpress.MappingColumns = this.Context.MappingColumns;
resolveExpress.MappingColumns = this.Context.MappingColumns;
resolveExpress.Resolve(expression, type); resolveExpress.Resolve(expression, type);
BasePars.AddRange(resolveExpress.Parameters); BasePars.AddRange(resolveExpress.Parameters);
SqlBuilder.LambadaQueryBuilder.WhereInfos.Add(SqlBuilder.AppendWhereOrAnd(SqlBuilder.LambadaQueryBuilder.WhereInfos.IsNullOrEmpty(), resolveExpress.Result.GetResultString())); SqlBuilder.LambadaQueryBuilder.WhereInfos.Add(SqlBuilder.AppendWhereOrAnd(SqlBuilder.LambadaQueryBuilder.WhereInfos.IsNullOrEmpty(), resolveExpress.Result.GetResultString()));
resolveExpress.Clear(); resolveExpress.Clear();
} }
#endregion #endregion
} }
} }

View File

@ -86,6 +86,7 @@ namespace SqlSugar
resolveExpress.JoinQueryInfos = Builder.LambadaQueryBuilder.JoinQueryInfos; resolveExpress.JoinQueryInfos = Builder.LambadaQueryBuilder.JoinQueryInfos;
resolveExpress.MappingColumns = Context.MappingColumns; resolveExpress.MappingColumns = Context.MappingColumns;
resolveExpress.MappingTables = Context.MappingTables; resolveExpress.MappingTables = Context.MappingTables;
resolveExpress.IgnoreComumnList = Context.IgnoreComumns;
resolveExpress.Resolve(expression, ResolveType); resolveExpress.Resolve(expression, ResolveType);
this.QueryPars.AddRange(resolveExpress.Parameters); this.QueryPars.AddRange(resolveExpress.Parameters);
var reval= resolveExpress.Result.GetResultString(); var reval= resolveExpress.Result.GetResultString();

View File

@ -0,0 +1,72 @@
using System;
using System.Collections.Generic;
using System.Data;
using System.Dynamic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
namespace SqlSugar
{
public class RewritableMethods : IRewritableMethods
{
/// <summary>
///DataReader to Dynamic
/// </summary>
/// <param name="reader"></param>
/// <returns></returns>
public ExpandoObject DataReaderToExpandoObject(IDataReader reader)
{
ExpandoObject d = new ExpandoObject();
for (int i = 0; i < reader.FieldCount; i++)
{
try
{
((IDictionary<string, object>)d).Add(reader.GetName(i), reader.GetValue(i));
}
catch
{
((IDictionary<string, object>)d).Add(reader.GetName(i), null);
}
}
return d;
}
public List<T> DataReaderToDynamicList<T>(IDataReader reader)
{
var list = new List<T>();
if (reader != null && !reader.IsClosed)
{
while (reader.Read())
{
var expandoObject = DataReaderToExpandoObject(reader);
var stringValue = SerializeObject(expandoObject);
list.Add((T)DeserializeObject<T>(stringValue));
}
reader.Close();
}
return list;
}
/// <summary>
/// Serialize Object
/// </summary>
/// <param name="value"></param>
/// <returns></returns>
public string SerializeObject(object value)
{
return JsonConvert.SerializeObject(value);
}
/// <summary>
/// Serialize Object
/// </summary>
/// <param name="value"></param>
/// <returns></returns>
public T DeserializeObject<T>(string value)
{
return JsonConvert.DeserializeObject<T>(value);
}
}
}

View File

@ -10,32 +10,32 @@ namespace SqlSugar
public SqlSugarException(string message) public SqlSugarException(string message)
: base(message){} : base(message){}
public SqlSugarException(string message, string sql) public SqlSugarException(SqlSugarClient context,string message, string sql)
: base(GetMessage(message, sql)) {} : base(GetMessage(context, message, sql)) {}
public SqlSugarException(string message, string sql, object pars) public SqlSugarException(SqlSugarClient context, string message, string sql, object pars)
: base(GetMessage(message, sql, pars)){} : base(GetMessage(context,message, sql, pars)){}
public SqlSugarException(string message, object pars) public SqlSugarException(SqlSugarClient context, string message, object pars)
: base(GetMessage(message, pars)){} : base(GetMessage(context,message, pars)){}
private static string GetMessage(string message, object pars) private static string GetMessage(SqlSugarClient context, string message, object pars)
{ {
var parsStr = string.Empty; ; var parsStr = string.Empty; ;
if (pars != null) if (pars != null)
{ {
parsStr = JsonConvert.SerializeObject(pars); parsStr = context.RewritableMethods.SerializeObject(pars);
} }
var reval = GetLineMessage("message", message) + GetLineMessage("function", parsStr); var reval = GetLineMessage("message", message) + GetLineMessage("function", parsStr);
return reval; return reval;
} }
private static string GetMessage(string message, string sql, object pars) private static string GetMessage(SqlSugarClient context, string message, string sql, object pars)
{ {
if (pars == null) if (pars == null)
{ {
return GetMessage(message, sql); return GetMessage(context,message, sql);
} }
else else
{ {

View File

@ -0,0 +1,14 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace SqlSugar
{
public class IgnoreComumn
{
public string EntityName { get; set; }
public string EntityPropertyName { get; set; }
}
}

View File

@ -19,6 +19,14 @@ namespace SqlSugar
} }
} }
public class IgnoreComumnList : List<IgnoreComumn> {
public void Add(string EntityPropertyName,string EntityName)
{
this.RemoveAll(it => it.EntityPropertyName.Equals(EntityPropertyName, StringComparison.CurrentCultureIgnoreCase));
this.Add(new IgnoreComumn() { EntityPropertyName = EntityPropertyName, EntityName=EntityName});
}
}
public class MappingColumnList: List<MappingColumn> public class MappingColumnList: List<MappingColumn>
{ {
public void Add(string EntityPropertyName, string dbColumnName,string dbTableName) public void Add(string EntityPropertyName, string dbColumnName,string dbTableName)

View File

@ -21,6 +21,7 @@ namespace SqlSugar
public int ParameterIndex { get; set; } public int ParameterIndex { get; set; }
public MappingColumnList MappingColumns { get; set; } public MappingColumnList MappingColumns { get; set; }
public MappingTableList MappingTables { get; set; } public MappingTableList MappingTables { get; set; }
public IgnoreComumnList IgnoreComumnList { get; set; }
public List<JoinQueryInfo> JoinQueryInfos { get; set; } public List<JoinQueryInfo> JoinQueryInfos { get; set; }
public bool IsJoin public bool IsJoin

View File

@ -93,6 +93,12 @@ namespace SqlSugar
var listProperties = item.Type.GetProperties().Cast<PropertyInfo>().ToList(); var listProperties = item.Type.GetProperties().Cast<PropertyInfo>().ToList();
foreach (var property in listProperties) foreach (var property in listProperties)
{ {
if (this.Context.IgnoreComumnList != null
&& this.Context.IgnoreComumnList.Any(
it => it.EntityName == item.Type.Name && it.EntityPropertyName == property.Name))
{
continue;
}
if (property.PropertyType.IsClass()) if (property.PropertyType.IsClass())
{ {

View File

@ -90,6 +90,11 @@ namespace SqlSugar
var listProperties = item.Type.GetProperties().Cast<PropertyInfo>().ToList(); var listProperties = item.Type.GetProperties().Cast<PropertyInfo>().ToList();
foreach (var property in listProperties) foreach (var property in listProperties)
{ {
if (this.Context.IgnoreComumnList != null
&& this.Context.IgnoreComumnList.Any(
it => it.EntityName == item.Type.Name&&it.EntityPropertyName==property.Name)) {
continue;
}
if (property.PropertyType.IsClass()) if (property.PropertyType.IsClass())
{ {

View File

@ -8,9 +8,10 @@ namespace SqlSugar
{ {
public partial interface ILambdaExpressions public partial interface ILambdaExpressions
{ {
MappingColumnList MappingColumns { get; set; } MappingColumnList MappingColumns { get; set; }
MappingTableList MappingTables { get; set; } MappingTableList MappingTables { get; set; }
List<JoinQueryInfo> JoinQueryInfos { get; set; } IgnoreComumnList IgnoreComumnList { get; set; }
List<JoinQueryInfo> JoinQueryInfos { get; set; }
SqlSugarClient Context { get; set; } SqlSugarClient Context { get; set; }
IDbMethods DbMehtods { get; set; } IDbMethods DbMehtods { get; set; }
Expression Expression { get; set; } Expression Expression { get; set; }

View File

@ -0,0 +1,29 @@
using System;
using System.Collections.Generic;
using System.Data;
using System.Dynamic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace SqlSugar
{
public interface IRewritableMethods
{
ExpandoObject DataReaderToExpandoObject(IDataReader reader);
List<T> DataReaderToDynamicList<T>(IDataReader reader);
/// <summary>
/// Serialize Object
/// </summary>
/// <param name="value"></param>
/// <returns></returns>
string SerializeObject(object value);
/// <summary>
/// Serialize Object
/// </summary>
/// <param name="value"></param>
/// <returns></returns>
T DeserializeObject<T>(string value);
}
}

View File

@ -74,6 +74,7 @@
<Compile Include="Common\PubConvert.cs" /> <Compile Include="Common\PubConvert.cs" />
<Compile Include="Common\PubMethod.cs" /> <Compile Include="Common\PubMethod.cs" />
<Compile Include="Common\SqlException.cs" /> <Compile Include="Common\SqlException.cs" />
<Compile Include="Common\RewritableMethods.cs" />
<Compile Include="Databases\SqlServer\CodeFirst\SqlServerCodeFirst.cs" /> <Compile Include="Databases\SqlServer\CodeFirst\SqlServerCodeFirst.cs" />
<Compile Include="Databases\SqlServer\DbType.cs" /> <Compile Include="Databases\SqlServer\DbType.cs" />
<Compile Include="Databases\SqlServer\Db\DbBind\SqlServerDbBind.cs" /> <Compile Include="Databases\SqlServer\Db\DbBind\SqlServerDbBind.cs" />
@ -87,6 +88,7 @@
<Compile Include="Entities\ConnectionConfig.cs" /> <Compile Include="Entities\ConnectionConfig.cs" />
<Compile Include="Entities\DbColumnInfo.cs" /> <Compile Include="Entities\DbColumnInfo.cs" />
<Compile Include="Entities\DbTableInfo.cs" /> <Compile Include="Entities\DbTableInfo.cs" />
<Compile Include="Entities\Mapping\IgnoreComumn.cs" />
<Compile Include="ExpressionsToSql\Common\CommonTempDataType.cs" /> <Compile Include="ExpressionsToSql\Common\CommonTempDataType.cs" />
<Compile Include="ExpressionsToSql\Common\MethodCallExpressionModel.cs" /> <Compile Include="ExpressionsToSql\Common\MethodCallExpressionModel.cs" />
<Compile Include="ExpressionsToSql\Method\DefaultDbMethod.cs" /> <Compile Include="ExpressionsToSql\Method\DefaultDbMethod.cs" />
@ -139,6 +141,7 @@
<Compile Include="Interface\IQueryable.cs" /> <Compile Include="Interface\IQueryable.cs" />
<Compile Include="Interface\ISqlBuilder\IDMLBuilder.cs" /> <Compile Include="Interface\ISqlBuilder\IDMLBuilder.cs" />
<Compile Include="Interface\ISqlBuilder\ISqlBuilder.cs" /> <Compile Include="Interface\ISqlBuilder\ISqlBuilder.cs" />
<Compile Include="Interface\IRewritableMethods.cs" />
<Compile Include="Properties\AssemblyInfo.cs" /> <Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="SqlSugarAccessory.cs" /> <Compile Include="SqlSugarAccessory.cs" />
<Compile Include="SqlSugarClient.cs" /> <Compile Include="SqlSugarClient.cs" />

View File

@ -15,11 +15,13 @@ namespace SqlSugar
public Guid ContextID { get; set; } public Guid ContextID { get; set; }
public MappingTableList MappingTables = new MappingTableList(); public MappingTableList MappingTables = new MappingTableList();
public MappingColumnList MappingColumns = new MappingColumnList(); public MappingColumnList MappingColumns = new MappingColumnList();
public IgnoreComumnList IgnoreComumns = new IgnoreComumnList();
protected ISqlBuilder _SqlBuilder; protected ISqlBuilder _SqlBuilder;
protected IDb _Ado; protected IDb _Ado;
protected ILambdaExpressions _LambdaExpressions; protected ILambdaExpressions _LambdaExpressions;
protected object _Sqlable; protected object _Sqlable;
protected IRewritableMethods _RewritableMethods;
protected void InitConstructor() protected void InitConstructor()
{ {

View File

@ -91,6 +91,27 @@ namespace SqlSugar
} }
} }
/// <summary>
/// Rewritable Methods
/// </summary>
public virtual IRewritableMethods RewritableMethods
{
get
{
if (base._RewritableMethods == null)
{
base._RewritableMethods = new RewritableMethods();
}
return _RewritableMethods;
}
set
{
base._RewritableMethods = value;
}
}
#endregion
#region functions
/// <summary> /// <summary>
/// Lambda Query operation /// Lambda Query operation
/// </summary> /// </summary>
@ -107,11 +128,10 @@ namespace SqlSugar
reval.SqlBuilder.LambadaQueryBuilder.LambdaExpressions = InstanceFactory.GetLambdaExpressions(base.CurrentConnectionConfig); reval.SqlBuilder.LambadaQueryBuilder.LambdaExpressions = InstanceFactory.GetLambdaExpressions(base.CurrentConnectionConfig);
return reval; return reval;
} }
/// <summary> /// <summary>
/// Lambda Query operation /// Lambda Query operation
/// </summary> /// </summary>
public virtual ISugarQueryable<SugarDynamic> Queryable(string tableName,string shortName,string widthString=null) public virtual ISugarQueryable<SugarDynamic> Queryable(string tableName, string shortName, string widthString = null)
{ {
var queryable = Queryable<SugarDynamic>(); var queryable = Queryable<SugarDynamic>();
queryable.SqlBuilder.LambadaQueryBuilder.EntityName = tableName; queryable.SqlBuilder.LambadaQueryBuilder.EntityName = tableName;
@ -119,7 +139,6 @@ namespace SqlSugar
queryable.SqlBuilder.LambadaQueryBuilder.TableWithString = widthString; queryable.SqlBuilder.LambadaQueryBuilder.TableWithString = widthString;
return queryable; return queryable;
} }
/// <summary> /// <summary>
/// Lambda Query operation /// Lambda Query operation
/// </summary> /// </summary>
@ -134,15 +153,15 @@ namespace SqlSugar
{ {
var queryable = Queryable<T>(); var queryable = Queryable<T>();
string shortName = string.Empty; string shortName = string.Empty;
queryable.SqlBuilder.LambadaQueryBuilder.JoinQueryInfos = base.GetJoinInfos(joinExpression, this,ref shortName, typeof(T2)); queryable.SqlBuilder.LambadaQueryBuilder.JoinQueryInfos = base.GetJoinInfos(joinExpression, this, ref shortName, typeof(T2));
queryable.SqlBuilder.LambadaQueryBuilder.TableShortName=shortName; queryable.SqlBuilder.LambadaQueryBuilder.TableShortName = shortName;
return queryable; return queryable;
} }
public virtual ISugarQueryable<T> Queryable<T, T2, T3>(Expression<Func<T, T2, T3, object[]>> joinExpression) where T : class, new() public virtual ISugarQueryable<T> Queryable<T, T2, T3>(Expression<Func<T, T2, T3, object[]>> joinExpression) where T : class, new()
{ {
var queryable = Queryable<T>(); var queryable = Queryable<T>();
string shortName = string.Empty; string shortName = string.Empty;
queryable.SqlBuilder.LambadaQueryBuilder.JoinQueryInfos = base.GetJoinInfos(joinExpression, this, ref shortName, typeof(T2),typeof(T3)); queryable.SqlBuilder.LambadaQueryBuilder.JoinQueryInfos = base.GetJoinInfos(joinExpression, this, ref shortName, typeof(T2), typeof(T3));
queryable.SqlBuilder.LambadaQueryBuilder.TableShortName = shortName; queryable.SqlBuilder.LambadaQueryBuilder.TableShortName = shortName;
return queryable; return queryable;
} }
@ -150,7 +169,7 @@ namespace SqlSugar
{ {
var queryable = Queryable<T>(); var queryable = Queryable<T>();
string shortName = string.Empty; string shortName = string.Empty;
queryable.SqlBuilder.LambadaQueryBuilder.JoinQueryInfos = base.GetJoinInfos(joinExpression, this, ref shortName, typeof(T2), typeof(T3),typeof(T4)); queryable.SqlBuilder.LambadaQueryBuilder.JoinQueryInfos = base.GetJoinInfos(joinExpression, this, ref shortName, typeof(T2), typeof(T3), typeof(T4));
queryable.SqlBuilder.LambadaQueryBuilder.TableShortName = shortName; queryable.SqlBuilder.LambadaQueryBuilder.TableShortName = shortName;
return queryable; return queryable;
} }
@ -158,7 +177,7 @@ namespace SqlSugar
{ {
var queryable = Queryable<T>(); var queryable = Queryable<T>();
string shortName = string.Empty; string shortName = string.Empty;
queryable.SqlBuilder.LambadaQueryBuilder.JoinQueryInfos = base.GetJoinInfos(joinExpression, this, ref shortName, typeof(T2), typeof(T3), typeof(T4),typeof(T5)); queryable.SqlBuilder.LambadaQueryBuilder.JoinQueryInfos = base.GetJoinInfos(joinExpression, this, ref shortName, typeof(T2), typeof(T3), typeof(T4), typeof(T5));
queryable.SqlBuilder.LambadaQueryBuilder.TableShortName = shortName; queryable.SqlBuilder.LambadaQueryBuilder.TableShortName = shortName;
return queryable; return queryable;
} }
@ -166,7 +185,7 @@ namespace SqlSugar
{ {
var queryable = Queryable<T>(); var queryable = Queryable<T>();
string shortName = string.Empty; string shortName = string.Empty;
queryable.SqlBuilder.LambadaQueryBuilder.JoinQueryInfos = base.GetJoinInfos(joinExpression, this, ref shortName, typeof(T2), typeof(T3), typeof(T4), typeof(T5),typeof(T6)); queryable.SqlBuilder.LambadaQueryBuilder.JoinQueryInfos = base.GetJoinInfos(joinExpression, this, ref shortName, typeof(T2), typeof(T3), typeof(T4), typeof(T5), typeof(T6));
queryable.SqlBuilder.LambadaQueryBuilder.TableShortName = shortName; queryable.SqlBuilder.LambadaQueryBuilder.TableShortName = shortName;
return queryable; return queryable;
} }
@ -174,7 +193,7 @@ namespace SqlSugar
{ {
var queryable = Queryable<T>(); var queryable = Queryable<T>();
string shortName = string.Empty; string shortName = string.Empty;
queryable.SqlBuilder.LambadaQueryBuilder.JoinQueryInfos = base.GetJoinInfos(joinExpression, this, ref shortName, typeof(T2), typeof(T3), typeof(T4), typeof(T5), typeof(T6),typeof(T7)); queryable.SqlBuilder.LambadaQueryBuilder.JoinQueryInfos = base.GetJoinInfos(joinExpression, this, ref shortName, typeof(T2), typeof(T3), typeof(T4), typeof(T5), typeof(T6), typeof(T7));
queryable.SqlBuilder.LambadaQueryBuilder.TableShortName = shortName; queryable.SqlBuilder.LambadaQueryBuilder.TableShortName = shortName;
return queryable; return queryable;
} }
@ -182,7 +201,7 @@ namespace SqlSugar
{ {
var queryable = Queryable<T>(); var queryable = Queryable<T>();
string shortName = string.Empty; string shortName = string.Empty;
queryable.SqlBuilder.LambadaQueryBuilder.JoinQueryInfos = base.GetJoinInfos(joinExpression, this, ref shortName, typeof(T2), typeof(T3), typeof(T4), typeof(T5), typeof(T6), typeof(T7),typeof(T8)); queryable.SqlBuilder.LambadaQueryBuilder.JoinQueryInfos = base.GetJoinInfos(joinExpression, this, ref shortName, typeof(T2), typeof(T3), typeof(T4), typeof(T5), typeof(T6), typeof(T7), typeof(T8));
queryable.SqlBuilder.LambadaQueryBuilder.TableShortName = shortName; queryable.SqlBuilder.LambadaQueryBuilder.TableShortName = shortName;
return queryable; return queryable;
} }
@ -190,7 +209,7 @@ namespace SqlSugar
{ {
var queryable = Queryable<T>(); var queryable = Queryable<T>();
string shortName = string.Empty; string shortName = string.Empty;
queryable.SqlBuilder.LambadaQueryBuilder.JoinQueryInfos = base.GetJoinInfos(joinExpression, this, ref shortName, typeof(T2), typeof(T3), typeof(T4), typeof(T5), typeof(T6), typeof(T7), typeof(T8),typeof(T9)); queryable.SqlBuilder.LambadaQueryBuilder.JoinQueryInfos = base.GetJoinInfos(joinExpression, this, ref shortName, typeof(T2), typeof(T3), typeof(T4), typeof(T5), typeof(T6), typeof(T7), typeof(T8), typeof(T9));
queryable.SqlBuilder.LambadaQueryBuilder.TableShortName = shortName; queryable.SqlBuilder.LambadaQueryBuilder.TableShortName = shortName;
return queryable; return queryable;
} }
@ -198,13 +217,11 @@ namespace SqlSugar
{ {
var queryable = Queryable<T>(); var queryable = Queryable<T>();
string shortName = string.Empty; string shortName = string.Empty;
queryable.SqlBuilder.LambadaQueryBuilder.JoinQueryInfos = base.GetJoinInfos(joinExpression, this, ref shortName, typeof(T2), typeof(T3), typeof(T4), typeof(T5), typeof(T6), typeof(T7), typeof(T8), typeof(T9),typeof(T10)); queryable.SqlBuilder.LambadaQueryBuilder.JoinQueryInfos = base.GetJoinInfos(joinExpression, this, ref shortName, typeof(T2), typeof(T3), typeof(T4), typeof(T5), typeof(T6), typeof(T7), typeof(T8), typeof(T9), typeof(T10));
queryable.SqlBuilder.LambadaQueryBuilder.TableShortName = shortName; queryable.SqlBuilder.LambadaQueryBuilder.TableShortName = shortName;
return queryable; return queryable;
} }
#endregion
#region functions
public virtual List<T> SqlQuery<T>(string sql, object pars = null) public virtual List<T> SqlQuery<T>(string sql, object pars = null)
{ {
var dbPars = this.Database.GetParameters(pars); var dbPars = this.Database.GetParameters(pars);