mirror of
https://github.com/nsnail/FreeSql.git
synced 2025-04-22 02:32:50 +08:00
- 优化 UpdateJoin .Set 固定值解析;
This commit is contained in:
parent
561b10331f
commit
b2f484dbc4
@ -586,6 +586,10 @@ namespace base_entity
|
|||||||
.Join<UserGroup>((a, b) => a.GroupId == b.Id)
|
.Join<UserGroup>((a, b) => a.GroupId == b.Id)
|
||||||
.Set((a, b) => a.Nickname == b.GroupName)
|
.Set((a, b) => a.Nickname == b.GroupName)
|
||||||
.ExecuteAffrows();
|
.ExecuteAffrows();
|
||||||
|
var updatejoin03 = fsql.Update<User1>()
|
||||||
|
.Join<UserGroup>((a, b) => a.GroupId == b.Id)
|
||||||
|
.Set((a, b) => a.Nickname == "b.groupname")
|
||||||
|
.ExecuteAffrows();
|
||||||
|
|
||||||
var sql1c2 = fsql.Select<User1>()
|
var sql1c2 = fsql.Select<User1>()
|
||||||
.GroupBy(a => new { a.Nickname, a.Avatar })
|
.GroupBy(a => new { a.Nickname, a.Avatar })
|
||||||
|
@ -733,6 +733,15 @@
|
|||||||
<param name="modelBuilder"></param>
|
<param name="modelBuilder"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="M:FreeSqlDbContextExtensions.ApplyConfigurationsFromAssembly(FreeSql.ICodeFirst,System.Reflection.Assembly,System.Func{System.Type,System.Boolean})">
|
||||||
|
<summary>
|
||||||
|
根据Assembly扫描所有继承IEntityTypeConfiguration<T>的配置类
|
||||||
|
</summary>
|
||||||
|
<param name="codeFirst"></param>
|
||||||
|
<param name="assembly"></param>
|
||||||
|
<param name="predicate"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
<member name="M:FreeSqlDbContextExtensions.CreateDbContext(IFreeSql)">
|
<member name="M:FreeSqlDbContextExtensions.CreateDbContext(IFreeSql)">
|
||||||
<summary>
|
<summary>
|
||||||
创建普通数据上下文档对象
|
创建普通数据上下文档对象
|
||||||
|
@ -169,11 +169,23 @@ namespace FreeSql.Internal.CommonProvider
|
|||||||
if (cols.Count != 1) return this;
|
if (cols.Count != 1) return this;
|
||||||
var col = cols[0].Column;
|
var col = cols[0].Column;
|
||||||
var columnSql = $"{_commonUtils.QuoteSqlName(col.Attribute.Name)}";
|
var columnSql = $"{_commonUtils.QuoteSqlName(col.Attribute.Name)}";
|
||||||
|
var valueSql = "";
|
||||||
|
|
||||||
_query2Provider._groupby = null;
|
if (equalBinaryExp.Right.IsParameter())
|
||||||
var valueExp = Expression.Lambda<Func<T1, T2, object>>(equalBinaryExp.Right, exp.Parameters);
|
{
|
||||||
_query2.GroupBy(valueExp);
|
_query2Provider._groupby = null;
|
||||||
var valueSql = _query2Provider._groupby?.Remove(0, " \r\nGROUP BY ".Length);
|
var valueExp = Expression.Lambda<Func<T1, T2, object>>(equalBinaryExp.Right, exp.Parameters);
|
||||||
|
_query2.GroupBy(valueExp);
|
||||||
|
valueSql = _query2Provider._groupby?.Remove(0, " \r\nGROUP BY ".Length);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
valueSql = _commonExpression.ExpressionLambdaToSql(equalBinaryExp.Right, new CommonExpression.ExpTSC
|
||||||
|
{
|
||||||
|
isQuoteName = true,
|
||||||
|
mapType = equalBinaryExp.Right is BinaryExpression ? null : col.Attribute.MapType
|
||||||
|
});
|
||||||
|
}
|
||||||
if (string.IsNullOrEmpty(valueSql)) return this;
|
if (string.IsNullOrEmpty(valueSql)) return this;
|
||||||
|
|
||||||
switch (_orm.Ado.DataType)
|
switch (_orm.Ado.DataType)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user