- 修复 UpdateJoin null 错误;

This commit is contained in:
2881099 2023-03-24 15:10:48 +08:00
parent c83baec65e
commit 3919180b0b
3 changed files with 10 additions and 28 deletions

View File

@ -578,6 +578,15 @@ namespace base_entity
BaseEntity.Initialization(fsql, () => _asyncUow.Value); BaseEntity.Initialization(fsql, () => _asyncUow.Value);
#endregion #endregion
var updatejoin01 = fsql.Update<User1>()
.Join(fsql.Select<UserGroup>(), (a, b) => a.GroupId == b.Id)
.Set((a, b) => a.Nickname == b.GroupName)
.ExecuteAffrows();
var updatejoin02 = 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 })
.WithTempQuery(b => new .WithTempQuery(b => new
@ -613,15 +622,6 @@ namespace base_entity
fsql.UseJsonMap(); fsql.UseJsonMap();
var updatejoin01 = fsql.Update<User1>()
.Join(fsql.Select<UserGroup>(), (a, b) => a.GroupId == b.Id)
.Set((a, b) => a.Nickname == b.GroupName)
.ExecuteAffrows();
var updatejoin02 = fsql.Update<User1>()
.Join<UserGroup>((a, b) => a.GroupId == b.Id)
.Set((a, b) => a.Nickname == b.GroupName)
.ExecuteAffrows();
fsql.Select<User1>().IncludeMany(a => a.Roles); fsql.Select<User1>().IncludeMany(a => a.Roles);
var displayNameTb = fsql.CodeFirst.GetTableByEntity(typeof(DeviceCodes)); var displayNameTb = fsql.CodeFirst.GetTableByEntity(typeof(DeviceCodes));

View File

@ -733,15 +733,6 @@
<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&lt;T&gt;的配置类
</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>
创建普通数据上下文档对象 创建普通数据上下文档对象
@ -800,14 +791,5 @@
<param name="that"></param> <param name="that"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:Microsoft.Extensions.DependencyInjection.FreeSqlRepositoryDependencyInjection.AddFreeRepository(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action{FreeSql.FluentDataFilter},System.Reflection.Assembly[])">
<summary>
批量注入 Repository可以参考代码自行调整
</summary>
<param name="services"></param>
<param name="globalDataFilter"></param>
<param name="assemblies"></param>
<returns></returns>
</member>
</members> </members>
</doc> </doc>

View File

@ -203,7 +203,7 @@ namespace FreeSql.Internal.CommonProvider
var sqltab = sql.Substring(7, setStartIndex - 7); var sqltab = sql.Substring(7, setStartIndex - 7);
var sqlset = ""; var sqlset = "";
var sqlwhere = ""; var sqlwhere = "";
var sqltab2 = _query2Provider._tableRules.FirstOrDefault()?.Invoke(typeof(T2), null).Replace(" \r\n", " \r\n ") ?? _commonUtils.QuoteSqlName(_query2Provider._tables[1].Table?.DbName); var sqltab2 = _query2Provider._tableRules.FirstOrDefault()?.Invoke(typeof(T2), null)?.Replace(" \r\n", " \r\n ") ?? _commonUtils.QuoteSqlName(_query2Provider._tables[1].Table?.DbName);
var whereStartIndex = sql.IndexOf(" \r\nWHERE ", setStartIndex); var whereStartIndex = sql.IndexOf(" \r\nWHERE ", setStartIndex);
if (whereStartIndex == -1) if (whereStartIndex == -1)
{ {