mirror of
https://github.com/nsnail/FreeSql.git
synced 2025-06-18 03:53:21 +08:00
- 优化 IUpdateJoin AsTable 同时对多表名设置;
This commit is contained in:
parent
632c5cabf4
commit
09225ffd12
@ -559,7 +559,7 @@ namespace base_entity
|
|||||||
//.UseConnectionString(FreeSql.DataType.Firebird, @"database=localhost:D:\fbdata\EXAMPLES.fdb;user=sysdba;password=123456;max pool size=5")
|
//.UseConnectionString(FreeSql.DataType.Firebird, @"database=localhost:D:\fbdata\EXAMPLES.fdb;user=sysdba;password=123456;max pool size=5")
|
||||||
//.UseQuoteSqlName(false)
|
//.UseQuoteSqlName(false)
|
||||||
|
|
||||||
//.UseConnectionString(FreeSql.DataType.MySql, "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;Initial Catalog=cccddd;Charset=utf8;SslMode=none;min pool size=1;Max pool size=3;AllowLoadLocalInfile=true")
|
.UseConnectionString(FreeSql.DataType.MySql, "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;Initial Catalog=cccddd;Charset=utf8;SslMode=none;min pool size=1;Max pool size=3;AllowLoadLocalInfile=true")
|
||||||
|
|
||||||
//.UseConnectionString(FreeSql.DataType.SqlServer, "Data Source=.;Integrated Security=True;Initial Catalog=freesqlTest;Pooling=true;Max Pool Size=3;TrustServerCertificate=true")
|
//.UseConnectionString(FreeSql.DataType.SqlServer, "Data Source=.;Integrated Security=True;Initial Catalog=freesqlTest;Pooling=true;Max Pool Size=3;TrustServerCertificate=true")
|
||||||
|
|
||||||
@ -600,6 +600,12 @@ namespace base_entity
|
|||||||
BaseEntity.Initialization(fsql, () => _asyncUow.Value);
|
BaseEntity.Initialization(fsql, () => _asyncUow.Value);
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
var updatejoin031sql = fsql.Update<User1>()
|
||||||
|
.Join<UserGroup>((a, b) => a.GroupId == b.Id)
|
||||||
|
.AsTable("t1", "t2")
|
||||||
|
.Set((a, b) => b.GroupName == a.Username + "b.groupname")
|
||||||
|
.ToSql();
|
||||||
|
|
||||||
fsql.CodeFirst.Entity<B11>(e =>
|
fsql.CodeFirst.Entity<B11>(e =>
|
||||||
{
|
{
|
||||||
e.Help().Navigate(b => b.a, nameof(B11.Id));
|
e.Help().Navigate(b => b.a, nameof(B11.Id));
|
||||||
@ -618,11 +624,6 @@ namespace base_entity
|
|||||||
|
|
||||||
fsql.GlobalFilter.Apply<User1>("test01", a => a.IsDeleted == false);
|
fsql.GlobalFilter.Apply<User1>("test01", a => a.IsDeleted == false);
|
||||||
|
|
||||||
var updatejoin031sql = fsql.Update<User1>()
|
|
||||||
.Join<UserGroup>((a, b) => a.GroupId == b.Id)
|
|
||||||
.Set((a, b) => b.GroupName == a.Username + "b.groupname")
|
|
||||||
.ToSql();
|
|
||||||
|
|
||||||
fsql.UseJsonMap();
|
fsql.UseJsonMap();
|
||||||
fsql.Select<MiDevice>().Where(a => a.FormLocking == null).Count();
|
fsql.Select<MiDevice>().Where(a => a.FormLocking == null).Count();
|
||||||
|
|
||||||
|
@ -800,14 +800,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>
|
||||||
|
@ -3412,11 +3412,12 @@
|
|||||||
<param name="name">零个或多个过滤器名字</param>
|
<param name="name">零个或多个过滤器名字</param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:FreeSql.IUpdateJoin`2.AsTable(System.String)">
|
<member name="M:FreeSql.IUpdateJoin`2.AsTable(System.String,System.String)">
|
||||||
<summary>
|
<summary>
|
||||||
设置表名
|
设置表名
|
||||||
</summary>
|
</summary>
|
||||||
<param name="tableName"></param>
|
<param name="tableName"></param>
|
||||||
|
<param name="joinTableName"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:FreeSql.IUpdateJoin`2.ToSql">
|
<member name="M:FreeSql.IUpdateJoin`2.ToSql">
|
||||||
|
@ -106,8 +106,9 @@ namespace FreeSql
|
|||||||
/// 设置表名
|
/// 设置表名
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="tableName"></param>
|
/// <param name="tableName"></param>
|
||||||
|
/// <param name="joinTableName"></param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
IUpdateJoin<T1, T2> AsTable(string tableName);
|
IUpdateJoin<T1, T2> AsTable(string tableName, string joinTableName);
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 返回即将执行的SQL语句
|
/// 返回即将执行的SQL语句
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
@ -98,9 +98,15 @@ namespace FreeSql.Internal.CommonProvider
|
|||||||
}
|
}
|
||||||
|
|
||||||
#region proxy IUpdate
|
#region proxy IUpdate
|
||||||
public IUpdateJoin<T1, T2> AsTable(string tableName)
|
public IUpdateJoin<T1, T2> AsTable(string tableName, string joinTableName)
|
||||||
{
|
{
|
||||||
_update.AsTable(tableName);
|
_update.AsTable(tableName);
|
||||||
|
_query2Provider._tableRules.Clear();
|
||||||
|
_query2Provider._tableRules.Add((t, old) =>
|
||||||
|
{
|
||||||
|
if (t == typeof(T2)) return joinTableName;
|
||||||
|
return old;
|
||||||
|
});
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
public IUpdateJoin<T1, T2> WithConnection(DbConnection connection)
|
public IUpdateJoin<T1, T2> WithConnection(DbConnection connection)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user