mirror of
https://github.com/nsnail/FreeSql.git
synced 2025-04-22 02:32:50 +08:00
文字错误更正
This commit is contained in:
parent
30385d2e91
commit
a2a3bb62d2
@ -33,7 +33,7 @@ var t2 = fsql.DbFirst.GetTablesByDatabase(fsql.DbFirst.GetDatabases()[0]);
|
|||||||
> 更多模板逐步开发中。。。
|
> 更多模板逐步开发中。。。
|
||||||
|
|
||||||
```csharp
|
```csharp
|
||||||
//创建模板生成类现实
|
//创建模板生成类实现
|
||||||
var gen = new FreeSql.Generator.TemplateGenerator();
|
var gen = new FreeSql.Generator.TemplateGenerator();
|
||||||
gen.Build(fsql.DbFirst,
|
gen.Build(fsql.DbFirst,
|
||||||
@"C:\Users\28810\Desktop\github\FreeSql\Templates\MySql\simple-entity", //模板目录(事先下载)
|
@"C:\Users\28810\Desktop\github\FreeSql\Templates\MySql\simple-entity", //模板目录(事先下载)
|
||||||
|
@ -27,7 +27,7 @@ IFreeSql fsql = new FreeSql.FreeSqlBuilder()
|
|||||||
}) //监听SQL命令对象,在执行后
|
}) //监听SQL命令对象,在执行后
|
||||||
.Build();
|
.Build();
|
||||||
|
|
||||||
//创建模板生成类现实
|
//创建模板生成类实现
|
||||||
var gen = new FreeSql.Generator.TemplateGenerator();
|
var gen = new FreeSql.Generator.TemplateGenerator();
|
||||||
gen.Build(mysql.DbFirst,
|
gen.Build(mysql.DbFirst,
|
||||||
@"C:\Users\28810\Desktop\github\FreeSql\Templates\MySql\simple-entity", //模板目录(事先下载)
|
@"C:\Users\28810\Desktop\github\FreeSql\Templates\MySql\simple-entity", //模板目录(事先下载)
|
||||||
|
@ -33,7 +33,7 @@ var t2 = fsql.DbFirst.GetTablesByDatabase(fsql.DbFirst.GetDatabases()[0]);
|
|||||||
> 更多模板逐步开发中。。。
|
> 更多模板逐步开发中。。。
|
||||||
|
|
||||||
```csharp
|
```csharp
|
||||||
//创建模板生成类现实
|
//创建模板生成类实现
|
||||||
var gen = new FreeSql.Generator.TemplateGenerator();
|
var gen = new FreeSql.Generator.TemplateGenerator();
|
||||||
gen.Build(fsql.DbFirst,
|
gen.Build(fsql.DbFirst,
|
||||||
@"C:\Users\28810\Desktop\github\FreeSql\Templates\MySql\simple-entity", //模板目录(事先下载)
|
@"C:\Users\28810\Desktop\github\FreeSql\Templates\MySql\simple-entity", //模板目录(事先下载)
|
||||||
|
@ -18,7 +18,7 @@ var mysql = new FreeSql.FreeSqlBuilder()
|
|||||||
.UseConnectionString(FreeSql.DataType.MySql, "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;Initial Catalog=cccddd;Charset=utf8;SslMode=none;Max pool size=10")
|
.UseConnectionString(FreeSql.DataType.MySql, "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;Initial Catalog=cccddd;Charset=utf8;SslMode=none;Max pool size=10")
|
||||||
.Build();
|
.Build();
|
||||||
|
|
||||||
//创建模板生成类现实
|
//创建模板生成类实现
|
||||||
var gen = new FreeSql.Generator.TemplateGenerator();
|
var gen = new FreeSql.Generator.TemplateGenerator();
|
||||||
gen.Build(mysql.DbFirst,
|
gen.Build(mysql.DbFirst,
|
||||||
@"C:\Users\28810\Desktop\github\FreeSql\Templates\MySql\simple-entity", //模板目录(事先下载)
|
@"C:\Users\28810\Desktop\github\FreeSql\Templates\MySql\simple-entity", //模板目录(事先下载)
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
<Version>0.0.12</Version>
|
<Version>0.0.12</Version>
|
||||||
<Authors>FreeSql</Authors>
|
<Authors>FreeSql</Authors>
|
||||||
<Product>FreeSql</Product>
|
<Product>FreeSql</Product>
|
||||||
<Description>FreeSql ICodeFirst 扩展库,现实从 EFCore FluentAPI/Attribute 读取,从而做到无缝接入已使用 EFCore 项目开发。</Description>
|
<Description>FreeSql ICodeFirst 扩展库,实现从 EFCore FluentAPI/Attribute 读取,从而做到无缝接入已使用 EFCore 项目开发。</Description>
|
||||||
<PackageProjectUrl>https://github.com/2881099/FreeSql</PackageProjectUrl>
|
<PackageProjectUrl>https://github.com/2881099/FreeSql</PackageProjectUrl>
|
||||||
<RepositoryUrl>https://github.com/2881099/FreeSql</RepositoryUrl>
|
<RepositoryUrl>https://github.com/2881099/FreeSql</RepositoryUrl>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
@ -46,7 +46,7 @@ namespace FreeSql {
|
|||||||
case DataType.Oracle:
|
case DataType.Oracle:
|
||||||
case DataType.Sqlite:
|
case DataType.Sqlite:
|
||||||
default:
|
default:
|
||||||
throw new NotImplementedException($"{_fsql.Ado.DataType}不支持类似returning或output类型的特性,请参考FreeSql插入数据的方法重新现实。");
|
throw new NotImplementedException($"{_fsql.Ado.DataType}不支持类似returning或output类型的特性,请参考FreeSql插入数据的方法重新实现。");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -60,7 +60,7 @@ namespace FreeSql {
|
|||||||
case DataType.Oracle:
|
case DataType.Oracle:
|
||||||
case DataType.Sqlite:
|
case DataType.Sqlite:
|
||||||
default:
|
default:
|
||||||
throw new NotImplementedException($"{_fsql.Ado.DataType}不支持类似returning或output类型的特性,请参考FreeSql插入数据的方法重新现实。");
|
throw new NotImplementedException($"{_fsql.Ado.DataType}不支持类似returning或output类型的特性,请参考FreeSql插入数据的方法重新实现。");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -74,7 +74,7 @@ namespace FreeSql {
|
|||||||
case DataType.Oracle:
|
case DataType.Oracle:
|
||||||
case DataType.Sqlite:
|
case DataType.Sqlite:
|
||||||
default:
|
default:
|
||||||
throw new NotImplementedException($"{_fsql.Ado.DataType}不支持类似returning或output类型的特性,请参考FreeSql插入数据的方法重新现实。");
|
throw new NotImplementedException($"{_fsql.Ado.DataType}不支持类似returning或output类型的特性,请参考FreeSql插入数据的方法重新实现。");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -88,7 +88,7 @@ namespace FreeSql {
|
|||||||
case DataType.Oracle:
|
case DataType.Oracle:
|
||||||
case DataType.Sqlite:
|
case DataType.Sqlite:
|
||||||
default:
|
default:
|
||||||
throw new NotImplementedException($"{_fsql.Ado.DataType}不支持类似returning或output类型的特性,请参考FreeSql插入数据的方法重新现实。");
|
throw new NotImplementedException($"{_fsql.Ado.DataType}不支持类似returning或output类型的特性,请参考FreeSql插入数据的方法重新实现。");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
<TargetFramework>netstandard2.0</TargetFramework>
|
<TargetFramework>netstandard2.0</TargetFramework>
|
||||||
<Version>0.1.7</Version>
|
<Version>0.1.7</Version>
|
||||||
<Authors>YeXiangQin</Authors>
|
<Authors>YeXiangQin</Authors>
|
||||||
<Description>FreeSql 通用仓库层现实,支持 MySql/SqlServer/PostgreSQL/Oracle/Sqlite 数据库。</Description>
|
<Description>FreeSql 通用仓库层实现,支持 MySql/SqlServer/PostgreSQL/Oracle/Sqlite 数据库。</Description>
|
||||||
<PackageProjectUrl>https://github.com/2881099/FreeSql</PackageProjectUrl>
|
<PackageProjectUrl>https://github.com/2881099/FreeSql</PackageProjectUrl>
|
||||||
<PackageTags>FreeSql ORM Repository</PackageTags>
|
<PackageTags>FreeSql ORM Repository</PackageTags>
|
||||||
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
|
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
|
||||||
|
@ -22,7 +22,7 @@ namespace FreeSql {
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// 使用缓存,不指定默认使用内存
|
/// 使用缓存,不指定默认使用内存
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="cache">缓存现实</param>
|
/// <param name="cache">缓存实现</param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public FreeSqlBuilder UseCache(IDistributedCache cache) {
|
public FreeSqlBuilder UseCache(IDistributedCache cache) {
|
||||||
_cache = cache;
|
_cache = cache;
|
||||||
|
@ -297,7 +297,7 @@ namespace FreeSql.Internal {
|
|||||||
}
|
}
|
||||||
var other3Exp = ExpressionLambdaToSqlOther(exp3, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
var other3Exp = ExpressionLambdaToSqlOther(exp3, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
||||||
if (string.IsNullOrEmpty(other3Exp) == false) return other3Exp;
|
if (string.IsNullOrEmpty(other3Exp) == false) return other3Exp;
|
||||||
throw new Exception($"未现实函数表达式 {exp3} 解析");
|
throw new Exception($"未实现函数表达式 {exp3} 解析");
|
||||||
case ExpressionType.MemberAccess:
|
case ExpressionType.MemberAccess:
|
||||||
var exp4 = exp as MemberExpression;
|
var exp4 = exp as MemberExpression;
|
||||||
if (exp4.Expression != null && exp4.Expression.Type.IsArray == false && exp4.Expression.Type.IsNullableType()) return ExpressionLambdaToSql(exp4.Expression, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
if (exp4.Expression != null && exp4.Expression.Type.IsArray == false && exp4.Expression.Type.IsNullableType()) return ExpressionLambdaToSql(exp4.Expression, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
||||||
@ -380,7 +380,7 @@ namespace FreeSql.Internal {
|
|||||||
exp2 = expStack.Pop();
|
exp2 = expStack.Pop();
|
||||||
switch (exp2.NodeType) {
|
switch (exp2.NodeType) {
|
||||||
case ExpressionType.Constant:
|
case ExpressionType.Constant:
|
||||||
throw new NotImplementedException("未现实 MemberAccess 下的 Constant");
|
throw new NotImplementedException("未实现 MemberAccess 下的 Constant");
|
||||||
case ExpressionType.Parameter:
|
case ExpressionType.Parameter:
|
||||||
case ExpressionType.MemberAccess:
|
case ExpressionType.MemberAccess:
|
||||||
|
|
||||||
|
@ -25,7 +25,7 @@ namespace FreeSql.Internal.CommonProvider {
|
|||||||
try { Cache.Remove($"{key1}|{key2}"); } catch { } // redis-cluster 不允许执行 multi keys 命令
|
try { Cache.Remove($"{key1}|{key2}"); } catch { } // redis-cluster 不允许执行 multi keys 命令
|
||||||
CacheSupportMultiRemove = Cache.Get(key1) == null && cache.Get(key2) == null;
|
CacheSupportMultiRemove = Cache.Get(key1) == null && cache.Get(key2) == null;
|
||||||
if (CacheSupportMultiRemove == false) {
|
if (CacheSupportMultiRemove == false) {
|
||||||
log.LogWarning("FreeSql Warning: 低性能, IDistributedCache 没现实批量删除缓存 Cache.Remove(\"key1|key2\").");
|
log.LogWarning("FreeSql Warning: 低性能, IDistributedCache 没实现批量删除缓存 Cache.Remove(\"key1|key2\").");
|
||||||
Remove(key1, key2);
|
Remove(key1, key2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -99,7 +99,7 @@ namespace FreeSql.Internal.CommonProvider {
|
|||||||
|
|
||||||
public T Shell<T>(string key, int timeoutSeconds, Func<T> getData) {
|
public T Shell<T>(string key, int timeoutSeconds, Func<T> getData) {
|
||||||
if (timeoutSeconds <= 0) return getData();
|
if (timeoutSeconds <= 0) return getData();
|
||||||
if (Cache == null) throw new Exception("缓存现实 IDistributedCache 为 null");
|
if (Cache == null) throw new Exception("缓存实现 IDistributedCache 为 null");
|
||||||
var cacheValue = Cache.Get(key);
|
var cacheValue = Cache.Get(key);
|
||||||
if (cacheValue != null) {
|
if (cacheValue != null) {
|
||||||
try {
|
try {
|
||||||
@ -117,7 +117,7 @@ namespace FreeSql.Internal.CommonProvider {
|
|||||||
|
|
||||||
public T Shell<T>(string key, string field, int timeoutSeconds, Func<T> getData) {
|
public T Shell<T>(string key, string field, int timeoutSeconds, Func<T> getData) {
|
||||||
if (timeoutSeconds <= 0) return getData();
|
if (timeoutSeconds <= 0) return getData();
|
||||||
if (Cache == null) throw new Exception("缓存现实 IDistributedCache 为 null");
|
if (Cache == null) throw new Exception("缓存实现 IDistributedCache 为 null");
|
||||||
var hashkey = $"{key}:{field}";
|
var hashkey = $"{key}:{field}";
|
||||||
var cacheValue = Cache.Get(hashkey);
|
var cacheValue = Cache.Get(hashkey);
|
||||||
if (cacheValue != null) {
|
if (cacheValue != null) {
|
||||||
@ -137,7 +137,7 @@ namespace FreeSql.Internal.CommonProvider {
|
|||||||
|
|
||||||
async public Task<T> ShellAsync<T>(string key, int timeoutSeconds, Func<Task<T>> getDataAsync) {
|
async public Task<T> ShellAsync<T>(string key, int timeoutSeconds, Func<Task<T>> getDataAsync) {
|
||||||
if (timeoutSeconds <= 0) return await getDataAsync();
|
if (timeoutSeconds <= 0) return await getDataAsync();
|
||||||
if (Cache == null) throw new Exception("缓存现实 IDistributedCache 为 null");
|
if (Cache == null) throw new Exception("缓存实现 IDistributedCache 为 null");
|
||||||
var cacheValue = await Cache.GetAsync(key);
|
var cacheValue = await Cache.GetAsync(key);
|
||||||
if (cacheValue != null) {
|
if (cacheValue != null) {
|
||||||
try {
|
try {
|
||||||
@ -155,7 +155,7 @@ namespace FreeSql.Internal.CommonProvider {
|
|||||||
|
|
||||||
async public Task<T> ShellAsync<T>(string key, string field, int timeoutSeconds, Func<Task<T>> getDataAsync) {
|
async public Task<T> ShellAsync<T>(string key, string field, int timeoutSeconds, Func<Task<T>> getDataAsync) {
|
||||||
if (timeoutSeconds <= 0) return await getDataAsync();
|
if (timeoutSeconds <= 0) return await getDataAsync();
|
||||||
if (Cache == null) throw new Exception("缓存现实 IDistributedCache 为 null");
|
if (Cache == null) throw new Exception("缓存实现 IDistributedCache 为 null");
|
||||||
var hashkey = $"{key}:{field}";
|
var hashkey = $"{key}:{field}";
|
||||||
var cacheValue = await Cache.GetAsync(hashkey);
|
var cacheValue = await Cache.GetAsync(hashkey);
|
||||||
if (cacheValue != null) {
|
if (cacheValue != null) {
|
||||||
|
@ -39,7 +39,7 @@ namespace FreeSql.Internal.CommonProvider {
|
|||||||
case "InnerJoin": this.InternalJoin(expCall.Arguments[0], SelectTableInfoType.InnerJoin); break;
|
case "InnerJoin": this.InternalJoin(expCall.Arguments[0], SelectTableInfoType.InnerJoin); break;
|
||||||
case "RightJoin": this.InternalJoin(expCall.Arguments[0], SelectTableInfoType.RightJoin); break;
|
case "RightJoin": this.InternalJoin(expCall.Arguments[0], SelectTableInfoType.RightJoin); break;
|
||||||
|
|
||||||
default: throw new NotImplementedException($"未现实 {expCall.Method.Name}");
|
default: throw new NotImplementedException($"未实现 {expCall.Method.Name}");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -61,7 +61,7 @@ public abstract class MygisGeometry {
|
|||||||
else if (wkt.StartsWith("multipoint", StringComparison.CurrentCultureIgnoreCase)) return new MygisMultiPoint(ParseLineString(wkt.Substring(10).Trim('(', ')')));
|
else if (wkt.StartsWith("multipoint", StringComparison.CurrentCultureIgnoreCase)) return new MygisMultiPoint(ParseLineString(wkt.Substring(10).Trim('(', ')')));
|
||||||
else if (wkt.StartsWith("multilinestring", StringComparison.CurrentCultureIgnoreCase)) return new MygisMultiLineString(ParseMultiLineString(wkt.Substring(15).Trim('(', ')')));
|
else if (wkt.StartsWith("multilinestring", StringComparison.CurrentCultureIgnoreCase)) return new MygisMultiLineString(ParseMultiLineString(wkt.Substring(15).Trim('(', ')')));
|
||||||
else if (wkt.StartsWith("multipolygon", StringComparison.CurrentCultureIgnoreCase)) return new MygisMultiPolygon(ParseMultiPolygon(wkt.Substring(12).Trim('(', ')')));
|
else if (wkt.StartsWith("multipolygon", StringComparison.CurrentCultureIgnoreCase)) return new MygisMultiPolygon(ParseMultiPolygon(wkt.Substring(12).Trim('(', ')')));
|
||||||
throw new NotImplementedException($"MygisGeometry.Parse 未现实 \"{wkt}\"");
|
throw new NotImplementedException($"MygisGeometry.Parse 未实现 \"{wkt}\"");
|
||||||
}
|
}
|
||||||
static MygisPoint ParsePoint(string str) {
|
static MygisPoint ParsePoint(string str) {
|
||||||
var m = regexMygisPoint.Match(str);
|
var m = regexMygisPoint.Match(str);
|
||||||
|
@ -187,7 +187,7 @@ namespace FreeSql.MySql {
|
|||||||
case "Equals": return $"({left} = {getExp(exp.Arguments[0])})";
|
case "Equals": return $"({left} = {getExp(exp.Arguments[0])})";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
throw new Exception($"MySqlExpression 未现实函数表达式 {exp} 解析");
|
throw new Exception($"MySqlExpression 未实现函数表达式 {exp} 解析");
|
||||||
}
|
}
|
||||||
internal override string ExpressionLambdaToSqlCallMath(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
internal override string ExpressionLambdaToSqlCallMath(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
||||||
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
||||||
@ -213,7 +213,7 @@ namespace FreeSql.MySql {
|
|||||||
case "Atan2": return $"atan2({getExp(exp.Arguments[0])}, {getExp(exp.Arguments[1])})";
|
case "Atan2": return $"atan2({getExp(exp.Arguments[0])}, {getExp(exp.Arguments[1])})";
|
||||||
case "Truncate": return $"truncate({getExp(exp.Arguments[0])}, 0)";
|
case "Truncate": return $"truncate({getExp(exp.Arguments[0])}, 0)";
|
||||||
}
|
}
|
||||||
throw new Exception($"MySqlExpression 未现实函数表达式 {exp} 解析");
|
throw new Exception($"MySqlExpression 未实现函数表达式 {exp} 解析");
|
||||||
}
|
}
|
||||||
internal override string ExpressionLambdaToSqlCallDateTime(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
internal override string ExpressionLambdaToSqlCallDateTime(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
||||||
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
||||||
@ -256,7 +256,7 @@ namespace FreeSql.MySql {
|
|||||||
case "ToString": return $"date_format({left}, '%Y-%m-%d %H:%i:%s.%f')";
|
case "ToString": return $"date_format({left}, '%Y-%m-%d %H:%i:%s.%f')";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
throw new Exception($"MySqlExpression 未现实函数表达式 {exp} 解析");
|
throw new Exception($"MySqlExpression 未实现函数表达式 {exp} 解析");
|
||||||
}
|
}
|
||||||
internal override string ExpressionLambdaToSqlCallTimeSpan(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
internal override string ExpressionLambdaToSqlCallTimeSpan(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
||||||
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
||||||
@ -286,7 +286,7 @@ namespace FreeSql.MySql {
|
|||||||
case "ToString": return $"cast({left} as char)";
|
case "ToString": return $"cast({left} as char)";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
throw new Exception($"MySqlExpression 未现实函数表达式 {exp} 解析");
|
throw new Exception($"MySqlExpression 未实现函数表达式 {exp} 解析");
|
||||||
}
|
}
|
||||||
internal override string ExpressionLambdaToSqlCallConvert(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
internal override string ExpressionLambdaToSqlCallConvert(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
||||||
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
||||||
@ -309,7 +309,7 @@ namespace FreeSql.MySql {
|
|||||||
case "ToUInt64": return $"cast({getExp(exp.Arguments[0])} as unsigned)";
|
case "ToUInt64": return $"cast({getExp(exp.Arguments[0])} as unsigned)";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
throw new Exception($"MySqlExpression 未现实函数表达式 {exp} 解析");
|
throw new Exception($"MySqlExpression 未实现函数表达式 {exp} 解析");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -187,7 +187,7 @@ namespace FreeSql.Oracle {
|
|||||||
case "Equals": return $"({left} = {getExp(exp.Arguments[0])})";
|
case "Equals": return $"({left} = {getExp(exp.Arguments[0])})";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
throw new Exception($"OracleExpression 未现实函数表达式 {exp} 解析");
|
throw new Exception($"OracleExpression 未实现函数表达式 {exp} 解析");
|
||||||
}
|
}
|
||||||
internal override string ExpressionLambdaToSqlCallMath(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
internal override string ExpressionLambdaToSqlCallMath(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
||||||
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
||||||
@ -214,7 +214,7 @@ namespace FreeSql.Oracle {
|
|||||||
//case "Atan2": return $"atan2({getExp(exp.Arguments[0])}, {getExp(exp.Arguments[1])})";
|
//case "Atan2": return $"atan2({getExp(exp.Arguments[0])}, {getExp(exp.Arguments[1])})";
|
||||||
case "Truncate": return $"trunc({getExp(exp.Arguments[0])}, 0)";
|
case "Truncate": return $"trunc({getExp(exp.Arguments[0])}, 0)";
|
||||||
}
|
}
|
||||||
throw new Exception($"OracleExpression 未现实函数表达式 {exp} 解析");
|
throw new Exception($"OracleExpression 未实现函数表达式 {exp} 解析");
|
||||||
}
|
}
|
||||||
internal override string ExpressionLambdaToSqlCallDateTime(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
internal override string ExpressionLambdaToSqlCallDateTime(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
||||||
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
||||||
@ -257,7 +257,7 @@ namespace FreeSql.Oracle {
|
|||||||
case "ToString": return $"to_char({left},'YYYY-MM-DD HH24:MI:SS.FF6')";
|
case "ToString": return $"to_char({left},'YYYY-MM-DD HH24:MI:SS.FF6')";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
throw new Exception($"OracleExpression 未现实函数表达式 {exp} 解析");
|
throw new Exception($"OracleExpression 未实现函数表达式 {exp} 解析");
|
||||||
}
|
}
|
||||||
internal override string ExpressionLambdaToSqlCallTimeSpan(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
internal override string ExpressionLambdaToSqlCallTimeSpan(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
||||||
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
||||||
@ -287,7 +287,7 @@ namespace FreeSql.Oracle {
|
|||||||
case "ToString": return $"to_char({left})";
|
case "ToString": return $"to_char({left})";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
throw new Exception($"OracleExpression 未现实函数表达式 {exp} 解析");
|
throw new Exception($"OracleExpression 未实现函数表达式 {exp} 解析");
|
||||||
}
|
}
|
||||||
internal override string ExpressionLambdaToSqlCallConvert(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
internal override string ExpressionLambdaToSqlCallConvert(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
||||||
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
||||||
@ -310,7 +310,7 @@ namespace FreeSql.Oracle {
|
|||||||
case "ToUInt64": return $"cast({getExp(exp.Arguments[0])} as number)";
|
case "ToUInt64": return $"cast({getExp(exp.Arguments[0])} as number)";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
throw new Exception($"OracleExpression 未现实函数表达式 {exp} 解析");
|
throw new Exception($"OracleExpression 未实现函数表达式 {exp} 解析");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -284,7 +284,7 @@ namespace FreeSql.PostgreSQL {
|
|||||||
case "Equals": return $"({left} = ({getExp(exp.Arguments[0])})::varchar)";
|
case "Equals": return $"({left} = ({getExp(exp.Arguments[0])})::varchar)";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
throw new Exception($"PostgreSQLExpression 未现实函数表达式 {exp} 解析");
|
throw new Exception($"PostgreSQLExpression 未实现函数表达式 {exp} 解析");
|
||||||
}
|
}
|
||||||
internal override string ExpressionLambdaToSqlCallMath(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
internal override string ExpressionLambdaToSqlCallMath(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
||||||
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
||||||
@ -310,7 +310,7 @@ namespace FreeSql.PostgreSQL {
|
|||||||
case "Atan2": return $"atan2({getExp(exp.Arguments[0])}, {getExp(exp.Arguments[1])})";
|
case "Atan2": return $"atan2({getExp(exp.Arguments[0])}, {getExp(exp.Arguments[1])})";
|
||||||
case "Truncate": return $"trunc({getExp(exp.Arguments[0])}, 0)";
|
case "Truncate": return $"trunc({getExp(exp.Arguments[0])}, 0)";
|
||||||
}
|
}
|
||||||
throw new Exception($"PostgreSQLExpression 未现实函数表达式 {exp} 解析");
|
throw new Exception($"PostgreSQLExpression 未实现函数表达式 {exp} 解析");
|
||||||
}
|
}
|
||||||
internal override string ExpressionLambdaToSqlCallDateTime(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
internal override string ExpressionLambdaToSqlCallDateTime(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
||||||
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
||||||
@ -353,7 +353,7 @@ namespace FreeSql.PostgreSQL {
|
|||||||
case "ToString": return $"to_char({left}, 'YYYY-MM-DD HH24:MI:SS.US')";
|
case "ToString": return $"to_char({left}, 'YYYY-MM-DD HH24:MI:SS.US')";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
throw new Exception($"PostgreSQLExpression 未现实函数表达式 {exp} 解析");
|
throw new Exception($"PostgreSQLExpression 未实现函数表达式 {exp} 解析");
|
||||||
}
|
}
|
||||||
internal override string ExpressionLambdaToSqlCallTimeSpan(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
internal override string ExpressionLambdaToSqlCallTimeSpan(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
||||||
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
||||||
@ -383,7 +383,7 @@ namespace FreeSql.PostgreSQL {
|
|||||||
case "ToString": return $"({left})::varchar";
|
case "ToString": return $"({left})::varchar";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
throw new Exception($"PostgreSQLExpression 未现实函数表达式 {exp} 解析");
|
throw new Exception($"PostgreSQLExpression 未实现函数表达式 {exp} 解析");
|
||||||
}
|
}
|
||||||
internal override string ExpressionLambdaToSqlCallConvert(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
internal override string ExpressionLambdaToSqlCallConvert(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
||||||
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
||||||
@ -406,7 +406,7 @@ namespace FreeSql.PostgreSQL {
|
|||||||
case "ToUInt64": return $"({getExp(exp.Arguments[0])})::int8";
|
case "ToUInt64": return $"({getExp(exp.Arguments[0])})::int8";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
throw new Exception($"PostgreSQLExpression 未现实函数表达式 {exp} 解析");
|
throw new Exception($"PostgreSQLExpression 未实现函数表达式 {exp} 解析");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -169,7 +169,7 @@ namespace FreeSql.SqlServer {
|
|||||||
case "Equals": return $"({left} = {getExp(exp.Arguments[0])})";
|
case "Equals": return $"({left} = {getExp(exp.Arguments[0])})";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
throw new Exception($"SqlServerExpression 未现实函数表达式 {exp} 解析");
|
throw new Exception($"SqlServerExpression 未实现函数表达式 {exp} 解析");
|
||||||
}
|
}
|
||||||
internal override string ExpressionLambdaToSqlCallMath(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
internal override string ExpressionLambdaToSqlCallMath(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
||||||
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
||||||
@ -195,7 +195,7 @@ namespace FreeSql.SqlServer {
|
|||||||
case "Atan2": return $"atan2({getExp(exp.Arguments[0])}, {getExp(exp.Arguments[1])})";
|
case "Atan2": return $"atan2({getExp(exp.Arguments[0])}, {getExp(exp.Arguments[1])})";
|
||||||
case "Truncate": return $"floor({getExp(exp.Arguments[0])})";
|
case "Truncate": return $"floor({getExp(exp.Arguments[0])})";
|
||||||
}
|
}
|
||||||
throw new Exception($"SqlServerExpression 未现实函数表达式 {exp} 解析");
|
throw new Exception($"SqlServerExpression 未实现函数表达式 {exp} 解析");
|
||||||
}
|
}
|
||||||
internal override string ExpressionLambdaToSqlCallDateTime(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
internal override string ExpressionLambdaToSqlCallDateTime(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
||||||
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
||||||
@ -238,7 +238,7 @@ namespace FreeSql.SqlServer {
|
|||||||
case "ToString": return $"convert(varchar, {left}, 121)";
|
case "ToString": return $"convert(varchar, {left}, 121)";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
throw new Exception($"SqlServerExpression 未现实函数表达式 {exp} 解析");
|
throw new Exception($"SqlServerExpression 未实现函数表达式 {exp} 解析");
|
||||||
}
|
}
|
||||||
internal override string ExpressionLambdaToSqlCallTimeSpan(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
internal override string ExpressionLambdaToSqlCallTimeSpan(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
||||||
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
||||||
@ -268,7 +268,7 @@ namespace FreeSql.SqlServer {
|
|||||||
case "ToString": return $"cast({left} as varchar)";
|
case "ToString": return $"cast({left} as varchar)";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
throw new Exception($"SqlServerExpression 未现实函数表达式 {exp} 解析");
|
throw new Exception($"SqlServerExpression 未实现函数表达式 {exp} 解析");
|
||||||
}
|
}
|
||||||
internal override string ExpressionLambdaToSqlCallConvert(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
internal override string ExpressionLambdaToSqlCallConvert(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
||||||
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
||||||
@ -291,7 +291,7 @@ namespace FreeSql.SqlServer {
|
|||||||
case "ToUInt64": return $"cast({getExp(exp.Arguments[0])} as bigint)";
|
case "ToUInt64": return $"cast({getExp(exp.Arguments[0])} as bigint)";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
throw new Exception($"SqlServerExpression 未现实函数表达式 {exp} 解析");
|
throw new Exception($"SqlServerExpression 未实现函数表达式 {exp} 解析");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -192,7 +192,7 @@ namespace FreeSql.Sqlite {
|
|||||||
case "Equals": return $"({left} = {getExp(exp.Arguments[0])})";
|
case "Equals": return $"({left} = {getExp(exp.Arguments[0])})";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
throw new Exception($"SqliteExpression 未现实函数表达式 {exp} 解析");
|
throw new Exception($"SqliteExpression 未实现函数表达式 {exp} 解析");
|
||||||
}
|
}
|
||||||
internal override string ExpressionLambdaToSqlCallMath(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
internal override string ExpressionLambdaToSqlCallMath(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
||||||
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
||||||
@ -218,7 +218,7 @@ namespace FreeSql.Sqlite {
|
|||||||
case "Atan2": return $"atan2({getExp(exp.Arguments[0])}, {getExp(exp.Arguments[1])})";
|
case "Atan2": return $"atan2({getExp(exp.Arguments[0])}, {getExp(exp.Arguments[1])})";
|
||||||
//case "Truncate": return $"truncate({getExp(exp.Arguments[0])}, 0)";
|
//case "Truncate": return $"truncate({getExp(exp.Arguments[0])}, 0)";
|
||||||
}
|
}
|
||||||
throw new Exception($"SqliteExpression 未现实函数表达式 {exp} 解析");
|
throw new Exception($"SqliteExpression 未实现函数表达式 {exp} 解析");
|
||||||
}
|
}
|
||||||
internal override string ExpressionLambdaToSqlCallDateTime(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
internal override string ExpressionLambdaToSqlCallDateTime(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
||||||
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
||||||
@ -261,7 +261,7 @@ namespace FreeSql.Sqlite {
|
|||||||
case "ToString": return $"strftime('%Y-%m-%d %H:%M.%f',{left})";
|
case "ToString": return $"strftime('%Y-%m-%d %H:%M.%f',{left})";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
throw new Exception($"SqliteExpression 未现实函数表达式 {exp} 解析");
|
throw new Exception($"SqliteExpression 未实现函数表达式 {exp} 解析");
|
||||||
}
|
}
|
||||||
internal override string ExpressionLambdaToSqlCallTimeSpan(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
internal override string ExpressionLambdaToSqlCallTimeSpan(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
||||||
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
||||||
@ -291,7 +291,7 @@ namespace FreeSql.Sqlite {
|
|||||||
case "ToString": return $"cast({left} as character)";
|
case "ToString": return $"cast({left} as character)";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
throw new Exception($"SqliteExpression 未现实函数表达式 {exp} 解析");
|
throw new Exception($"SqliteExpression 未实现函数表达式 {exp} 解析");
|
||||||
}
|
}
|
||||||
internal override string ExpressionLambdaToSqlCallConvert(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
internal override string ExpressionLambdaToSqlCallConvert(MethodCallExpression exp, List<SelectTableInfo> _tables, List<SelectColumnInfo> _selectColumnMap, Func<Expression[], string> getSelectGroupingMapString, SelectTableInfoType tbtype, bool isQuoteName) {
|
||||||
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
Func<Expression, string> getExp = exparg => ExpressionLambdaToSql(exparg, _tables, _selectColumnMap, getSelectGroupingMapString, tbtype, isQuoteName);
|
||||||
@ -314,7 +314,7 @@ namespace FreeSql.Sqlite {
|
|||||||
case "ToUInt64": return $"cast({getExp(exp.Arguments[0])} as decimal(21,0))";
|
case "ToUInt64": return $"cast({getExp(exp.Arguments[0])} as decimal(21,0))";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
throw new Exception($"SqliteExpression 未现实函数表达式 {exp} 解析");
|
throw new Exception($"SqliteExpression 未实现函数表达式 {exp} 解析");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -18,7 +18,7 @@ var mysql = new FreeSql.FreeSqlBuilder()
|
|||||||
.UseConnectionString(FreeSql.DataType.MySql, "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;Initial Catalog=cccddd;Charset=utf8;SslMode=none;Max pool size=10")
|
.UseConnectionString(FreeSql.DataType.MySql, "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;Initial Catalog=cccddd;Charset=utf8;SslMode=none;Max pool size=10")
|
||||||
.Build();
|
.Build();
|
||||||
|
|
||||||
//创建模板生成类现实
|
//创建模板生成类实现
|
||||||
var gen = new FreeSql.Generator.TemplateGenerator();
|
var gen = new FreeSql.Generator.TemplateGenerator();
|
||||||
gen.Build(mysql.DbFirst,
|
gen.Build(mysql.DbFirst,
|
||||||
@"C:\Users\28810\Desktop\github\FreeSql\Templates\MySql\simple-entity", //模板目录(事先下载)
|
@"C:\Users\28810\Desktop\github\FreeSql\Templates\MySql\simple-entity", //模板目录(事先下载)
|
||||||
|
@ -18,7 +18,7 @@ var mysql = new FreeSql.FreeSqlBuilder()
|
|||||||
.UseConnectionString(FreeSql.DataType.MySql, "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;Initial Catalog=cccddd;Charset=utf8;SslMode=none;Max pool size=10")
|
.UseConnectionString(FreeSql.DataType.MySql, "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;Initial Catalog=cccddd;Charset=utf8;SslMode=none;Max pool size=10")
|
||||||
.Build();
|
.Build();
|
||||||
|
|
||||||
//创建模板生成类现实
|
//创建模板生成类实现
|
||||||
var gen = new FreeSql.Generator.TemplateGenerator();
|
var gen = new FreeSql.Generator.TemplateGenerator();
|
||||||
gen.Build(mysql.DbFirst,
|
gen.Build(mysql.DbFirst,
|
||||||
@"C:\Users\28810\Desktop\github\FreeSql\Templates\MySql\simple-entity", //模板目录(事先下载)
|
@"C:\Users\28810\Desktop\github\FreeSql\Templates\MySql\simple-entity", //模板目录(事先下载)
|
||||||
|
@ -18,7 +18,7 @@ var mysql = new FreeSql.FreeSqlBuilder()
|
|||||||
.UseConnectionString(FreeSql.DataType.MySql, "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;Initial Catalog=cccddd;Charset=utf8;SslMode=none;Max pool size=10")
|
.UseConnectionString(FreeSql.DataType.MySql, "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;Initial Catalog=cccddd;Charset=utf8;SslMode=none;Max pool size=10")
|
||||||
.Build();
|
.Build();
|
||||||
|
|
||||||
//创建模板生成类现实
|
//创建模板生成类实现
|
||||||
var gen = new FreeSql.Generator.TemplateGenerator();
|
var gen = new FreeSql.Generator.TemplateGenerator();
|
||||||
gen.Build(mysql.DbFirst,
|
gen.Build(mysql.DbFirst,
|
||||||
@"C:\Users\28810\Desktop\github\FreeSql\Templates\MySql\simple-entity", //模板目录(事先下载)
|
@"C:\Users\28810\Desktop\github\FreeSql\Templates\MySql\simple-entity", //模板目录(事先下载)
|
||||||
|
@ -18,7 +18,7 @@ var mysql = new FreeSql.FreeSqlBuilder()
|
|||||||
.UseConnectionString(FreeSql.DataType.MySql, "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;Initial Catalog=cccddd;Charset=utf8;SslMode=none;Max pool size=10")
|
.UseConnectionString(FreeSql.DataType.MySql, "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;Initial Catalog=cccddd;Charset=utf8;SslMode=none;Max pool size=10")
|
||||||
.Build();
|
.Build();
|
||||||
|
|
||||||
//创建模板生成类现实
|
//创建模板生成类实现
|
||||||
var gen = new FreeSql.Generator.TemplateGenerator();
|
var gen = new FreeSql.Generator.TemplateGenerator();
|
||||||
gen.Build(mysql.DbFirst,
|
gen.Build(mysql.DbFirst,
|
||||||
@"C:\Users\28810\Desktop\github\FreeSql\Templates\MySql\simple-entity", //模板目录(事先下载)
|
@"C:\Users\28810\Desktop\github\FreeSql\Templates\MySql\simple-entity", //模板目录(事先下载)
|
||||||
|
@ -18,7 +18,7 @@ var mysql = new FreeSql.FreeSqlBuilder()
|
|||||||
.UseConnectionString(FreeSql.DataType.MySql, "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;Initial Catalog=cccddd;Charset=utf8;SslMode=none;Max pool size=10")
|
.UseConnectionString(FreeSql.DataType.MySql, "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;Initial Catalog=cccddd;Charset=utf8;SslMode=none;Max pool size=10")
|
||||||
.Build();
|
.Build();
|
||||||
|
|
||||||
//创建模板生成类现实
|
//创建模板生成类实现
|
||||||
var gen = new FreeSql.Generator.TemplateGenerator();
|
var gen = new FreeSql.Generator.TemplateGenerator();
|
||||||
gen.Build(mysql.DbFirst,
|
gen.Build(mysql.DbFirst,
|
||||||
@"C:\Users\28810\Desktop\github\FreeSql\Templates\MySql\simple-entity", //模板目录(事先下载)
|
@"C:\Users\28810\Desktop\github\FreeSql\Templates\MySql\simple-entity", //模板目录(事先下载)
|
||||||
|
@ -18,7 +18,7 @@ var mysql = new FreeSql.FreeSqlBuilder()
|
|||||||
.UseConnectionString(FreeSql.DataType.MySql, "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;Initial Catalog=cccddd;Charset=utf8;SslMode=none;Max pool size=10")
|
.UseConnectionString(FreeSql.DataType.MySql, "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;Initial Catalog=cccddd;Charset=utf8;SslMode=none;Max pool size=10")
|
||||||
.Build();
|
.Build();
|
||||||
|
|
||||||
//创建模板生成类现实
|
//创建模板生成类实现
|
||||||
var gen = new FreeSql.Generator.TemplateGenerator();
|
var gen = new FreeSql.Generator.TemplateGenerator();
|
||||||
gen.Build(mysql.DbFirst,
|
gen.Build(mysql.DbFirst,
|
||||||
@"C:\Users\28810\Desktop\github\FreeSql\Templates\MySql\simple-entity", //模板目录(事先下载)
|
@"C:\Users\28810\Desktop\github\FreeSql\Templates\MySql\simple-entity", //模板目录(事先下载)
|
||||||
|
@ -18,7 +18,7 @@ var mysql = new FreeSql.FreeSqlBuilder()
|
|||||||
.UseConnectionString(FreeSql.DataType.MySql, "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;Initial Catalog=cccddd;Charset=utf8;SslMode=none;Max pool size=10")
|
.UseConnectionString(FreeSql.DataType.MySql, "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;Initial Catalog=cccddd;Charset=utf8;SslMode=none;Max pool size=10")
|
||||||
.Build();
|
.Build();
|
||||||
|
|
||||||
//创建模板生成类现实
|
//创建模板生成类实现
|
||||||
var gen = new FreeSql.Generator.TemplateGenerator();
|
var gen = new FreeSql.Generator.TemplateGenerator();
|
||||||
gen.Build(mysql.DbFirst,
|
gen.Build(mysql.DbFirst,
|
||||||
@"C:\Users\28810\Desktop\github\FreeSql\Templates\MySql\simple-entity", //模板目录(事先下载)
|
@"C:\Users\28810\Desktop\github\FreeSql\Templates\MySql\simple-entity", //模板目录(事先下载)
|
||||||
|
@ -18,7 +18,7 @@ var mysql = new FreeSql.FreeSqlBuilder()
|
|||||||
.UseConnectionString(FreeSql.DataType.MySql, "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;Initial Catalog=cccddd;Charset=utf8;SslMode=none;Max pool size=10")
|
.UseConnectionString(FreeSql.DataType.MySql, "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;Initial Catalog=cccddd;Charset=utf8;SslMode=none;Max pool size=10")
|
||||||
.Build();
|
.Build();
|
||||||
|
|
||||||
//创建模板生成类现实
|
//创建模板生成类实现
|
||||||
var gen = new FreeSql.Generator.TemplateGenerator();
|
var gen = new FreeSql.Generator.TemplateGenerator();
|
||||||
gen.Build(mysql.DbFirst,
|
gen.Build(mysql.DbFirst,
|
||||||
@"C:\Users\28810\Desktop\github\FreeSql\Templates\MySql\simple-entity", //模板目录(事先下载)
|
@"C:\Users\28810\Desktop\github\FreeSql\Templates\MySql\simple-entity", //模板目录(事先下载)
|
||||||
|
@ -18,7 +18,7 @@ var mysql = new FreeSql.FreeSqlBuilder()
|
|||||||
.UseConnectionString(FreeSql.DataType.MySql, "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;Initial Catalog=cccddd;Charset=utf8;SslMode=none;Max pool size=10")
|
.UseConnectionString(FreeSql.DataType.MySql, "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;Initial Catalog=cccddd;Charset=utf8;SslMode=none;Max pool size=10")
|
||||||
.Build();
|
.Build();
|
||||||
|
|
||||||
//创建模板生成类现实
|
//创建模板生成类实现
|
||||||
var gen = new FreeSql.Generator.TemplateGenerator();
|
var gen = new FreeSql.Generator.TemplateGenerator();
|
||||||
gen.Build(mysql.DbFirst,
|
gen.Build(mysql.DbFirst,
|
||||||
@"C:\Users\28810\Desktop\github\FreeSql\Templates\MySql\simple-entity", //模板目录(事先下载)
|
@"C:\Users\28810\Desktop\github\FreeSql\Templates\MySql\simple-entity", //模板目录(事先下载)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user