Update Core

This commit is contained in:
sunkaixuan
2017-07-16 05:17:05 +08:00
parent 1064f7363a
commit 1e3960c5ba
36 changed files with 132 additions and 85 deletions

View File

@@ -103,7 +103,7 @@ new List<SugarParameter>() {
);
db.IgnoreColumns = new IgnoreComumnList();
db.IgnoreColumns = new IgnoreColumnList();
db.IgnoreColumns.Add("TestId", "Student");
//Insert List<T>

View File

@@ -103,7 +103,7 @@ new List<SugarParameter>() {
);
db.IgnoreColumns = new IgnoreComumnList();
db.IgnoreColumns = new IgnoreColumnList();
db.IgnoreColumns.Add("TestId", "Student");
//Insert List<T>

View File

@@ -206,7 +206,7 @@ namespace SqlSugar
}
protected virtual string GetTableName(EntityInfo entityInfo)
{
return this.Context.EntityProvider.GetTableName(entityInfo.DbTableName);
return this.Context.EntityProvider.GetTableName(entityInfo.EntityName);
}
protected virtual DbColumnInfo EntityColumnToDbColumn(EntityInfo entityInfo, string tableName, EntityColumnInfo item)
{

View File

@@ -190,7 +190,7 @@ namespace SqlSugar
{
if (this.Context.IsSystemTablesConfig)
{
return this.Context.DbMaintenance.GetPrimaries(this.EntityInfo.DbTableName);
return this.Context.DbMaintenance.GetPrimaries(this.Context.EntityProvider.GetTableName(this.EntityInfo.EntityName));
}
else
{
@@ -201,7 +201,7 @@ namespace SqlSugar
{
if (this.Context.IsSystemTablesConfig)
{
return this.Context.DbMaintenance.GetIsIdentities(this.EntityInfo.DbTableName);
return this.Context.DbMaintenance.GetIsIdentities(this.Context.EntityProvider.GetTableName(this.EntityInfo.EntityName));
}
else
{

View File

@@ -67,7 +67,7 @@ namespace SqlSugar
}
public IInsertable<T> IgnoreColumns(Expression<Func<T, object>> columns)
{
var ignoreColumns = InsertBuilder.GetExpressionValue(columns, ResolveExpressType.ArraySingle).GetResultArray();
var ignoreColumns = InsertBuilder.GetExpressionValue(columns, ResolveExpressType.ArraySingle).GetResultArray().Select(it => this.SqlBuilder.GetNoTranslationColumnName(it)).ToList();
this.InsertBuilder.DbColumnInfoList = this.InsertBuilder.DbColumnInfoList.Where(it => !ignoreColumns.Contains(it.PropertyName)).ToList();
return this;
}
@@ -79,7 +79,7 @@ namespace SqlSugar
public IInsertable<T> InsertColumns(Expression<Func<T, object>> columns)
{
var ignoreColumns = InsertBuilder.GetExpressionValue(columns, ResolveExpressType.ArraySingle).GetResultArray();
var ignoreColumns = InsertBuilder.GetExpressionValue(columns, ResolveExpressType.ArraySingle).GetResultArray().Select(it=>this.SqlBuilder.GetNoTranslationColumnName(it)).ToList();
this.InsertBuilder.DbColumnInfoList = this.InsertBuilder.DbColumnInfoList.Where(it => ignoreColumns.Contains(it.PropertyName)).ToList();
return this;
}

View File

@@ -564,7 +564,7 @@ namespace SqlSugar
if (expression is NewExpression)
{
lamResult = QueryBuilder.GetExpressionValue(expression, isSingle ? ResolveExpressType.ArraySingle : ResolveExpressType.ArrayMultiple);
result = string.Join(",", lamResult.GetResultArray().Select(it => this.SqlBuilder.GetTranslationColumnName(typeof(T).Name, it)));
result = string.Join(",", lamResult.GetResultArray().Select(it => it));
}
else
{
@@ -608,7 +608,7 @@ namespace SqlSugar
if (expression is NewExpression)
{
lamResult = QueryBuilder.GetExpressionValue(expression, isSingle ? ResolveExpressType.ArraySingle : ResolveExpressType.ArrayMultiple);
result = string.Join(",", lamResult.GetResultArray().Select(it => this.SqlBuilder.GetTranslationColumnName(typeof(T).Name, it)));
result = string.Join(",", lamResult.GetResultArray());
}
else
{
@@ -651,7 +651,7 @@ namespace SqlSugar
{
if (this.Context.IsSystemTablesConfig)
{
return this.Context.DbMaintenance.GetPrimaries(this.EntityInfo.DbTableName);
return this.Context.DbMaintenance.GetPrimaries(this.Context.EntityProvider.GetTableName(this.EntityInfo.EntityName));
}
else
{

View File

@@ -3,6 +3,8 @@ using System.Collections.Generic;
using System.Text;
using System.Linq;
using System.Linq.Expressions;
using System.Reflection;
namespace SqlSugar
{
public class InsertBuilder : IDMLBuilder
@@ -165,6 +167,10 @@ namespace SqlSugar
}
return "'" + date.ToString("yyyy-MM-dd HH:mm:ss.fff") + "'";
}
else if (type.IsEnum())
{
return Convert.ToInt64(value);
}
else if (type == PubConst.BoolType)
{
return value.ObjToBool() ? "1" : "0";

View File

@@ -256,13 +256,18 @@ namespace SqlSugar
if (externalOrderBy.IsNullOrEmpty()) {
externalOrderBy = " ORDER BY GetDate() ";
}
result = string.Format("SELECT *,ROW_NUMBER() OVER({0}) AS RowIndex2 FROM ({1}) ExternalTable ", externalOrderBy,result);
result = string.Format("SELECT *,ROW_NUMBER() OVER({0}) AS RowIndex2 FROM ({1}) ExternalTable ", GetExternalOrderBy(externalOrderBy),result);
result = ToPageSql2(result,ExternalPageIndex, ExternalPageSize, true);
}
this.OrderByValue = oldOrderBy;
return result;
}
public virtual string GetExternalOrderBy(string externalOrderBy)
{
return Regex.Replace(externalOrderBy, @"\[\w+\]\.", "");
}
public virtual string ToCountSql(string sql)
{

View File

@@ -2,6 +2,7 @@
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Reflection;
using System.Text;
namespace SqlSugar
@@ -153,19 +154,19 @@ namespace SqlSugar
while (pageCount >= pageIndex)
{
StringBuilder updateTable = new StringBuilder();
string setValues = string.Join(",", groupList.First().Where(it=>it.IsPrimarykey==false&&(it.IsIdentity==false||(IsOffIdentity&&it.IsIdentity))).Select(it =>
{
if (SetValues.IsValuable())
{
var setValue = SetValues.Where(sv => sv.Key == Builder.GetTranslationColumnName(it.DbColumnName));
if (setValue != null && setValue.Any())
{
return setValue.First().Value;
}
}
var result = string.Format("S.{0}=T.{0}", Builder.GetTranslationColumnName(it.DbColumnName));
return result;
}));
string setValues = string.Join(",", groupList.First().Where(it => it.IsPrimarykey == false && (it.IsIdentity == false || (IsOffIdentity && it.IsIdentity))).Select(it =>
{
if (SetValues.IsValuable())
{
var setValue = SetValues.Where(sv => sv.Key == Builder.GetTranslationColumnName(it.DbColumnName));
if (setValue != null && setValue.Any())
{
return setValue.First().Value;
}
}
var result = string.Format("S.{0}=T.{0}", Builder.GetTranslationColumnName(it.DbColumnName));
return result;
}));
batchUpdateSql.AppendFormat(SqlTemplateBatch.ToString(), setValues, GetTableNameStringNoWith, TableWithString);
int i = 0;
foreach (var columns in groupList.Skip((pageIndex - 1) * pageSize).Take(pageSize).ToList())
@@ -253,11 +254,16 @@ namespace SqlSugar
if (type == PubConst.DateType)
{
var date = value.ObjToDate();
if (date < Convert.ToDateTime("1900-1-1")) {
if (date < Convert.ToDateTime("1900-1-1"))
{
date = Convert.ToDateTime("1900-1-1");
}
return "'" + date.ToString("yyyy-MM-dd HH:mm:ss.fff") + "'";
}
else if (type.IsEnum())
{
return Convert.ToInt64(value);
}
else if (type == PubConst.BoolType)
{
return value.ObjToBool() ? "1" : "0";

View File

@@ -48,7 +48,7 @@ namespace SqlSugar
public IUpdateable<T> IgnoreColumns(Expression<Func<T, object>> columns)
{
var ignoreColumns = UpdateBuilder.GetExpressionValue(columns, ResolveExpressType.ArraySingle).GetResultArray();
var ignoreColumns = UpdateBuilder.GetExpressionValue(columns, ResolveExpressType.ArraySingle).GetResultArray().Select(it => this.SqlBuilder.GetNoTranslationColumnName(it)).ToList();
this.UpdateBuilder.DbColumnInfoList = this.UpdateBuilder.DbColumnInfoList.Where(it => !ignoreColumns.Contains(it.PropertyName)).ToList();
return this;
}
@@ -77,7 +77,7 @@ namespace SqlSugar
public IUpdateable<T> UpdateColumns(Expression<Func<T, object>> columns)
{
var updateColumns = UpdateBuilder.GetExpressionValue(columns, ResolveExpressType.ArraySingle).GetResultArray();
var updateColumns = UpdateBuilder.GetExpressionValue(columns, ResolveExpressType.ArraySingle).GetResultArray().Select(it => this.SqlBuilder.GetNoTranslationColumnName(it)).ToList();
List<string> primaryKeys = GetPrimaryKeys();
foreach (var item in this.UpdateBuilder.DbColumnInfoList)
{
@@ -108,6 +108,7 @@ namespace SqlSugar
{
var expResult = UpdateBuilder.GetExpressionValue(columns, ResolveExpressType.Update);
var resultArray=expResult.GetResultArray();
Check.ArgumentNullException(resultArray, "UpdateColumns Parameter error, UpdateColumns(it=>new T{ it.id=1}) is valid, UpdateColumns(it=>T) is error");
if (resultArray.IsValuable()) {
foreach (var item in resultArray)
{
@@ -252,7 +253,7 @@ namespace SqlSugar
{
if (this.Context.IsSystemTablesConfig)
{
return this.Context.DbMaintenance.GetPrimaries(this.EntityInfo.DbTableName);
return this.Context.DbMaintenance.GetPrimaries(this.Context.EntityProvider.GetTableName(this.EntityInfo.EntityName));
}
else
{
@@ -263,7 +264,7 @@ namespace SqlSugar
{
if (this.Context.IsSystemTablesConfig)
{
return this.Context.DbMaintenance.GetIsIdentities(this.EntityInfo.DbTableName);
return this.Context.DbMaintenance.GetIsIdentities(this.Context.EntityProvider.GetTableName(this.EntityInfo.EntityName));
}
else
{

View File

@@ -7,6 +7,8 @@ namespace SqlSugar
{
public partial class DbType
{
public const string MySql = "MySql";
public const string SqlServer = "SqlServer";
public const string Sqlite = "Sqlite";
}
}

View File

@@ -6,7 +6,7 @@ using System.Threading.Tasks;
namespace SqlSugar
{
public class IgnoreComumn
public class IgnoreColumn
{
public string EntityName { get; set; }
public string PropertyName { get; set; }

View File

@@ -23,12 +23,12 @@ namespace SqlSugar
}
}
public class IgnoreComumnList : List<IgnoreComumn>
public class IgnoreColumnList : List<IgnoreColumn>
{
public void Add(string propertyName, string EntityName)
{
this.RemoveAll(it =>it.EntityName==EntityName&&it.PropertyName.Equals(propertyName, StringComparison.CurrentCultureIgnoreCase));
this.Add(new IgnoreComumn() { PropertyName = propertyName, EntityName = EntityName });
this.Add(new IgnoreColumn() { PropertyName = propertyName, EntityName = EntityName });
}
public new void Clear()

View File

@@ -101,6 +101,7 @@ namespace SqlSugar
switch (this._ResolveExpressType)
{
case ResolveExpressType.ArraySingle:
case ResolveExpressType.ArrayMultiple:
case ResolveExpressType.SelectSingle:
case ResolveExpressType.SelectMultiple:
case ResolveExpressType.Update:

View File

@@ -39,7 +39,7 @@ namespace SqlSugar
public int ParameterIndex { get; set; }
public MappingColumnList MappingColumns { get; set; }
public MappingTableList MappingTables { get; set; }
public IgnoreComumnList IgnoreComumnList { get; set; }
public IgnoreColumnList IgnoreComumnList { get; set; }
public bool IsSingle
{
get

View File

@@ -174,6 +174,9 @@ namespace SqlSugar
{
var appendValue = this.Context.SqlParameterKeyWord + ExpressionConst.Const + Context.ParameterIndex;
Context.ParameterIndex++;
if (value != null && value.GetType().IsEnum()) {
value = Convert.ToInt64(value);
}
this.Context.Parameters.Add(new SugarParameter(appendValue, value));
appendValue = string.Format(" {0} ", appendValue);
if (isLeft == true)

View File

@@ -21,6 +21,10 @@ namespace SqlSugar
case ResolveExpressType.Update:
case ResolveExpressType.SelectSingle:
case ResolveExpressType.SelectMultiple:
if (value != null && value.GetType().IsEnum())
{
value = Convert.ToInt64(value);
}
parameter.BaseParameter.CommonTempData = value;
break;
case ResolveExpressType.WhereSingle:

View File

@@ -103,8 +103,9 @@ namespace SqlSugar
fieldName = GetMultipleName(parameter, expression, isLeft);
base.Context.Result.Append(fieldName);
break;
case ResolveExpressType.ArrayMultiple:
case ResolveExpressType.ArraySingle:
fieldName = GetArrayName(parameter, expression, isLeft);
fieldName = GetName(parameter, expression, isLeft,parameter.Context.ResolveType== ResolveExpressType.ArraySingle);
base.Context.Result.Append(fieldName);
break;
default:
@@ -166,10 +167,5 @@ namespace SqlSugar
fieldName = Context.GetTranslationColumnName(fieldName);
return fieldName;
}
private string GetArrayName(ExpressionParameter parameter, MemberExpression expression, bool? isLeft)
{
string fieldName = expression.Member.Name;
return fieldName;
}
}
}

View File

@@ -14,7 +14,20 @@ namespace SqlSugar
var express = base.Expression as MethodCallExpression;
var isLeft = parameter.IsLeft;
string methodName = express.Method.Name;
if (methodName == "get_Item")
var isValidNativeMethod = MethodMapping.ContainsKey(methodName) && express.Method.DeclaringType.Namespace == ("System");
List<MethodCallExpressionArgs> appendArgs = null;
if (MethodTimeMapping.ContainsKey(methodName))
{
appendArgs = new List<MethodCallExpressionArgs>();
var dateType = MethodTimeMapping[methodName];
string paramterName = this.Context.SqlParameterKeyWord + ExpressionConst.Const + this.Context.ParameterIndex;
appendArgs.Add(new MethodCallExpressionArgs() { IsMember=false, MemberName= paramterName, MemberValue=dateType });
this.Context.Parameters.Add(new SugarParameter(paramterName, dateType.ToString()));
this.Context.ParameterIndex++;
methodName = "DateAdd";
isValidNativeMethod = true;
}
else if (methodName == "get_Item")
{
string paramterName = this.Context.SqlParameterKeyWord + ExpressionConst.Const + this.Context.ParameterIndex;
this.Context.Parameters.Add(new SugarParameter(paramterName, ExpressionTool.DynamicInvoke(express)));
@@ -22,18 +35,19 @@ namespace SqlSugar
this.Context.ParameterIndex++;
return;
}
else if (methodName == "NewGuid") {
else if (methodName == "NewGuid")
{
this.Context.Result.Append(this.Context.DbMehtods.GuidNew());
return;
}
var isValidNativeMethod = MethodMapping.ContainsKey(methodName)&&express.Method.DeclaringType.Namespace==("System");
if (!isValidNativeMethod&&express.Method.DeclaringType.Namespace.IsIn("System.Linq", "System.Collections.Generic")&&methodName=="Contains") {
if (!isValidNativeMethod && express.Method.DeclaringType.Namespace.IsIn("System.Linq", "System.Collections.Generic") && methodName == "Contains")
{
methodName = "ContainsArray";
isValidNativeMethod = true;
}
if (isValidNativeMethod)
{
NativeExtensionMethod(parameter, express, isLeft, MethodMapping[methodName]);
NativeExtensionMethod(parameter, express, isLeft, MethodMapping[methodName],appendArgs);
}
else
{
@@ -67,7 +81,7 @@ namespace SqlSugar
}
}
private void NativeExtensionMethod(ExpressionParameter parameter, MethodCallExpression express, bool? isLeft,string name)
private void NativeExtensionMethod(ExpressionParameter parameter, MethodCallExpression express, bool? isLeft, string name, List<MethodCallExpressionArgs> appendArgs = null)
{
var method = express.Method;
var args = express.Arguments.Cast<Expression>().ToList();
@@ -79,14 +93,14 @@ namespace SqlSugar
case ResolveExpressType.WhereMultiple:
if (express.Object != null)
args.Insert(0, express.Object);
Where(parameter, isLeft, name, args, model);
Where(parameter, isLeft, name, args, model, appendArgs);
break;
case ResolveExpressType.SelectSingle:
case ResolveExpressType.SelectMultiple:
case ResolveExpressType.Update:
if (express.Object != null)
args.Insert(0, express.Object);
Select(parameter, isLeft, name, args, model);
Select(parameter, isLeft, name, args, model, appendArgs);
break;
case ResolveExpressType.FieldSingle:
case ResolveExpressType.FieldMultiple:
@@ -95,7 +109,7 @@ namespace SqlSugar
}
}
private void Select(ExpressionParameter parameter, bool? isLeft, string name, IEnumerable<Expression> args, MethodCallExpressionModel model)
private void Select(ExpressionParameter parameter, bool? isLeft, string name, IEnumerable<Expression> args, MethodCallExpressionModel model, List<MethodCallExpressionArgs> appendArgs = null)
{
foreach (var item in args)
{
@@ -109,9 +123,13 @@ namespace SqlSugar
Default(parameter, model, item);
}
}
if (appendArgs != null)
{
model.Args.AddRange(appendArgs);
}
parameter.BaseParameter.CommonTempData = GetMdthodValue(name, model);
}
private void Where(ExpressionParameter parameter, bool? isLeft, string name, IEnumerable<Expression> args, MethodCallExpressionModel model)
private void Where(ExpressionParameter parameter, bool? isLeft, string name, IEnumerable<Expression> args, MethodCallExpressionModel model, List<MethodCallExpressionArgs> appendArgs = null)
{
foreach (var item in args)
{
@@ -125,6 +143,10 @@ namespace SqlSugar
Default(parameter, model, item);
}
}
if (appendArgs != null)
{
model.Args.AddRange(appendArgs);
}
var methodValue = GetMdthodValue(name, model);
base.AppendValue(parameter, isLeft, methodValue);
}
@@ -243,7 +265,7 @@ namespace SqlSugar
return this.Context.DbMehtods.AggregateCount(model);
case "MappingColumn":
var mappingColumnResult = this.Context.DbMehtods.MappingColumn(model);
var isValid= model.Args[0].IsMember&&model.Args[1].IsMember==false;
var isValid = model.Args[0].IsMember && model.Args[1].IsMember == false;
Check.Exception(!isValid, "SqlFunc.MappingColumn parameters error, The property name on the left, string value on the right");
this.Context.Parameters.RemoveAll(it => it.ParameterName == model.Args[1].MemberName.ObjToString());
return mappingColumnResult;
@@ -273,12 +295,23 @@ namespace SqlSugar
{ "Equals","Equals"},
{ "ToLower","ToLower"},
{ "ToUpper","ToUpper"},
{ "Substring","Substring"}
{ "Substring","Substring"},
{ "DateAdd","DateAdd"}
};
private static Dictionary<string, DateType> MethodTimeMapping = new Dictionary<string, DateType>() {
{ "AddYears",DateType.Year},
{ "AddMonths",DateType.Month},
{ "AddDays",DateType.Day},
{ "AddHours",DateType.Hour},
{ "AddMinutes",DateType.Minute},
{ "AddSeconds",DateType.Second},
{ "AddMilliseconds",DateType.Millisecond}
};
private void CheckMethod(MethodCallExpression expression)
{
Check.Exception(expression.Method.ReflectedType().FullName != ExpressionConst.SqlFuncFullName,string.Format(ExpressionErrorMessage.MethodError, expression.Method.Name));
Check.Exception(expression.Method.ReflectedType().FullName != ExpressionConst.SqlFuncFullName, string.Format(ExpressionErrorMessage.MethodError, expression.Method.Name));
}
}
}

View File

@@ -28,7 +28,7 @@ namespace SqlSugar
case ResolveExpressType.FieldSingle:
break;
case ResolveExpressType.FieldMultiple:
break;
case ResolveExpressType.ArrayMultiple:
case ResolveExpressType.ArraySingle:
foreach (var item in expression.Arguments)
{

View File

@@ -10,7 +10,7 @@ namespace SqlSugar
{
MappingColumnList MappingColumns { get; set; }
MappingTableList MappingTables { get; set; }
IgnoreComumnList IgnoreComumnList { get; set; }
IgnoreColumnList IgnoreComumnList { get; set; }
List<JoinQueryInfo> JoinQueryInfos { get; set; }
bool IsSingle { get; set; }
SqlSugarClient Context { get; set; }

View File

@@ -17,5 +17,5 @@ using System.Runtime.InteropServices;
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("1c022a5c-4e4d-4026-a8a3-f659b9740a1a")]
[assembly: AssemblyVersion("4.2.0.6")]
[assembly: AssemblyFileVersion("4.2.0.6")]
[assembly: AssemblyVersion("4.2.0.7")]
[assembly: AssemblyFileVersion("4.2.0.7")]

View File

@@ -1,12 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace SqlSugar
{
public partial class DbType
{
public const string MySql = "MySql";
}
}

View File

@@ -42,7 +42,7 @@ namespace SqlSugar
public override string GetNoTranslationColumnName(string name)
{
if (!name.Contains("`")) return name;
return name == null ? string.Empty : Regex.Match(name, @"\`(.*?)\`").Groups[1].Value;
return name == null ? string.Empty : Regex.Match(name, @".*\`(.*?)\`").Groups[1].Value;
}
}
}

View File

@@ -60,7 +60,7 @@ namespace SqlSugar
{
return @"SELECT s.Name,Convert(varchar(max),tbp.value) as Description
FROM sysobjects s
LEFT JOIN sys.extended_properties as tbp ON s.id=tbp.major_id and tbp.minor_id=0 WHERE s.xtype IN('U')";
LEFT JOIN sys.extended_properties as tbp ON s.id=tbp.major_id and tbp.minor_id=0 WHERE s.xtype IN('U') AND (tbp.Name='MS_Description' OR tbp.Name is null)";
}
}
protected override string GetViewInfoListSql
@@ -69,7 +69,7 @@ namespace SqlSugar
{
return @"SELECT s.Name,Convert(varchar(max),tbp.value) as Description
FROM sysobjects s
LEFT JOIN sys.extended_properties as tbp ON s.id=tbp.major_id and tbp.minor_id=0 WHERE s.xtype IN('V')";
LEFT JOIN sys.extended_properties as tbp ON s.id=tbp.major_id and tbp.minor_id=0 WHERE s.xtype IN('V') AND (tbp.Name='MS_Description' OR tbp.Name is null)";
}
}
#endregion

View File

@@ -1,7 +0,0 @@
namespace SqlSugar
{
public partial class DbType
{
public const string SqlServer = "SqlServer";
}
}

View File

@@ -45,7 +45,7 @@ namespace SqlSugar
public override string GetNoTranslationColumnName(string name)
{
if (!name.Contains("[")) return name;
return name == null ? string.Empty : Regex.Match(name, @"\[(.*?)\]").Groups[1].Value;
return name == null ? string.Empty : Regex.Match(name, @".*\[(.*?)\]").Groups[1].Value;
}
}
}

View File

@@ -40,7 +40,7 @@ namespace SqlSugar
public override string GetNoTranslationColumnName(string name)
{
if (!name.Contains("`")) return name;
return name == null ? string.Empty : Regex.Match(name, @"\`(.*?)\`").Groups[1].Value;
return name == null ? string.Empty : Regex.Match(name, @".*\`(.*?)\`").Groups[1].Value;
}
}
}

View File

@@ -1,4 +1,5 @@
using System;
using System.Reflection;
namespace SqlSugar
{
@@ -52,6 +53,10 @@ namespace SqlSugar
}
return "'" + date.ToString("yyyy-MM-dd HH:mm:ss.fff") + "'";
}
else if (type.IsEnum())
{
return Convert.ToInt64(value);
}
else if (type == PubConst.BoolType)
{
return value.ObjToBool() ? "1" : "0";

View File

@@ -29,6 +29,10 @@ namespace SqlSugar
}
return "'" + date.ToString("yyyy-MM-dd HH:mm:ss.fff") + "'";
}
else if (type.IsEnum())
{
return Convert.ToInt64(value);
}
else if (type == PubConst.BoolType)
{
return value.ObjToBool() ? "1" : "0";

View File

@@ -16,7 +16,7 @@ namespace SqlSugar
public Guid ContextID { get; set; }
public MappingTableList MappingTables = new MappingTableList();
public MappingColumnList MappingColumns = new MappingColumnList();
public IgnoreComumnList IgnoreColumns = new IgnoreComumnList();
public IgnoreColumnList IgnoreColumns = new IgnoreColumnList();
#endregion
#region Fields
@@ -89,7 +89,7 @@ namespace SqlSugar
if (this.MappingColumns == null)
this.MappingColumns = new MappingColumnList();
if (this.IgnoreColumns == null)
this.IgnoreColumns = new IgnoreComumnList();
this.IgnoreColumns = new IgnoreColumnList();
if (!this.MappingTables.Any(it => it.EntityName == entityInfo.EntityName))
{
if (entityInfo.DbTableName != entityInfo.EntityName && entityInfo.DbTableName.IsValuable())

View File

@@ -2,7 +2,7 @@
<package >
<metadata>
<id>sqlSugarCore</id>
<version>4.2.0.6</version>
<version>4.2.0.7</version>
<authors>sunkaixuan</authors>
<owners>Landa</owners>
<licenseUrl>http://www.apache.org/licenses/LICENSE-2.0.html</licenseUrl>

View File

@@ -8,6 +8,6 @@ namespace OrmTest
{
public class Config
{
public static string ConnectionString = @"DataSource=D:\MyGit\SqlSugar\Src\Asp.NetCore\SqlServerTest\src\SqliteTest\DataBase\SqlSugar4xTest.sqlite";
public static string ConnectionString = @"DataSource=F:\MyOpenSource\SqlSugar4.XNew\SqlSugar\Src\Asp.NetCore\SqlServerTest\src\SqliteTest\DataBase\SqlSugar4xTest.sqlite";
}
}

View File

@@ -103,7 +103,7 @@ new List<SugarParameter>() {
);
db.IgnoreColumns = new IgnoreComumnList();
db.IgnoreColumns = new IgnoreColumnList();
db.IgnoreColumns.Add("TestId", "Student");
//Insert List<T>