Update OscarDB

This commit is contained in:
sunkaixuan 2024-11-21 15:58:21 +08:00
parent a5dbd0b93e
commit 8705787656
2 changed files with 20 additions and 12 deletions

View File

@ -35,23 +35,23 @@ namespace SqlSugar
}
}
public bool isAutoToLower
public bool isAutoToUpper
{
get
{
if (this.Context.CurrentConnectionConfig.MoreSettings == null) return true;
return this.Context.CurrentConnectionConfig.MoreSettings.PgSqlIsAutoToLower;
if (this.Context?.CurrentConnectionConfig?.MoreSettings == null) return true;
return this.Context.CurrentConnectionConfig.MoreSettings.IsAutoToUpper;
}
}
public override string GetTranslationColumnName(string propertyName)
{
if (propertyName.Contains(".") && !propertyName.Contains(SqlTranslationLeft))
{
return string.Join(".", propertyName.Split('.').Select(it => $"{SqlTranslationLeft}{it.ToUpper()}{SqlTranslationRight}"));
return string.Join(".", propertyName.Split('.').Select(it => $"{SqlTranslationLeft}{it.ToUpper(isAutoToUpper)}{SqlTranslationRight}"));
}
if (propertyName.Contains(SqlTranslationLeft)) return propertyName;
else
return SqlTranslationLeft + propertyName.ToUpper() + SqlTranslationRight;
return SqlTranslationLeft + propertyName.ToUpper(isAutoToUpper) + SqlTranslationRight;
}
//public override string GetNoTranslationColumnName(string name)
@ -68,7 +68,7 @@ namespace SqlSugar
.FirstOrDefault(it =>
it.EntityName.Equals(entityName, StringComparison.CurrentCultureIgnoreCase) &&
it.PropertyName.Equals(propertyName, StringComparison.CurrentCultureIgnoreCase));
return (mappingInfo == null ? SqlTranslationLeft + propertyName.ToUpper() + SqlTranslationRight : SqlTranslationLeft + mappingInfo.DbColumnName.ToUpper() + SqlTranslationRight);
return (mappingInfo == null ? SqlTranslationLeft + propertyName.ToUpper(isAutoToUpper) + SqlTranslationRight : SqlTranslationLeft + mappingInfo.DbColumnName.ToUpper(isAutoToUpper) + SqlTranslationRight);
}
public override string GetTranslationTableName(string name)
@ -82,7 +82,7 @@ namespace SqlSugar
name = (mappingInfo == null ? name : mappingInfo.DbTableName);
if (name.Contains(".")&& !name.Contains("("))
{
return string.Join(".", name.ToUpper().Split('.').Select(it => SqlTranslationLeft + it + SqlTranslationRight));
return string.Join(".", name.ToUpper(isAutoToUpper).Split('.').Select(it => SqlTranslationLeft + it + SqlTranslationRight));
}
else if (name.Contains("("))
{
@ -94,7 +94,7 @@ namespace SqlSugar
}
else
{
return SqlTranslationLeft + name.ToUpper().TrimEnd('"').TrimStart('"') + SqlTranslationRight;
return SqlTranslationLeft + name.ToUpper(isAutoToUpper).TrimEnd('"').TrimStart('"') + SqlTranslationRight;
}
}
}

View File

@ -5,6 +5,14 @@ namespace SqlSugar
public class OscarExpressionContext : ExpressionContext, ILambdaExpressions
{
public SqlSugarProvider Context { get; set; }
public bool isAutoToUpper
{
get
{
if (this?.SugarContext?.Context?.CurrentConnectionConfig?.MoreSettings == null) return true;
return this.SugarContext.Context.CurrentConnectionConfig.MoreSettings.IsAutoToUpper;
}
}
public OscarExpressionContext()
{
base.DbMehtods = new OscarLMethod();
@ -25,7 +33,7 @@ namespace SqlSugar
}
public override string GetTranslationText(string name)
{
return SqlTranslationLeft + name.ToUpper() + SqlTranslationRight;
return SqlTranslationLeft + name.ToUpper(isAutoToUpper) + SqlTranslationRight;
}
public override string GetTranslationTableName(string entityName, bool isMapping = true)
@ -55,7 +63,7 @@ namespace SqlSugar
return tableName;
}
return SqlTranslationLeft + (mappingInfo == null ? entityName : mappingInfo.DbTableName).ToUpper() + SqlTranslationRight;
return SqlTranslationLeft + (mappingInfo == null ? entityName : mappingInfo.DbTableName).ToUpper(isAutoToUpper) + SqlTranslationRight;
}
else if (isComplex)
{
@ -88,11 +96,11 @@ namespace SqlSugar
if (this.MappingColumns.HasValue())
{
var mappingInfo = this.MappingColumns.SingleOrDefault(it => it.EntityName == entityName && it.PropertyName == propertyName);
return (mappingInfo == null ? propertyName : mappingInfo.DbColumnName).ToUpper();
return (mappingInfo == null ? propertyName : mappingInfo.DbColumnName).ToUpper(isAutoToUpper);
}
else
{
return propertyName.ToUpper();
return propertyName.ToUpper(isAutoToUpper);
}
}
}