mirror of
https://github.com/nsnail/FreeSql.git
synced 2025-04-22 18:52:50 +08:00
- 调整 SyncStructure 返回值为 void
This commit is contained in:
parent
19ab4da369
commit
74f8700c21
@ -121,6 +121,13 @@
|
|||||||
清空状态数据
|
清空状态数据
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="M:FreeSql.DbSet`1.RemoveAsync(System.Linq.Expressions.Expression{System.Func{`0,System.Boolean}})">
|
||||||
|
<summary>
|
||||||
|
根据 lambda 条件删除数据
|
||||||
|
</summary>
|
||||||
|
<param name="predicate"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
<member name="M:FreeSql.DbSet`1.Add(`0)">
|
<member name="M:FreeSql.DbSet`1.Add(`0)">
|
||||||
<summary>
|
<summary>
|
||||||
添加
|
添加
|
||||||
@ -215,6 +222,15 @@
|
|||||||
</summary>
|
</summary>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="M:FreeSql.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>
|
||||||
<member name="P:FreeSql.IBaseRepository.Orm">
|
<member name="P:FreeSql.IBaseRepository.Orm">
|
||||||
<summary>
|
<summary>
|
||||||
注意:IFreeSql 属于顶级对象,事务无法自动传递。<para></para>
|
注意:IFreeSql 属于顶级对象,事务无法自动传递。<para></para>
|
||||||
|
@ -2763,14 +2763,12 @@
|
|||||||
同步实体类型到数据库
|
同步实体类型到数据库
|
||||||
</summary>
|
</summary>
|
||||||
<typeparam name="TEntity"></typeparam>
|
<typeparam name="TEntity"></typeparam>
|
||||||
<returns></returns>
|
|
||||||
</member>
|
</member>
|
||||||
<member name="M:FreeSql.ICodeFirst.SyncStructure(System.Type[])">
|
<member name="M:FreeSql.ICodeFirst.SyncStructure(System.Type[])">
|
||||||
<summary>
|
<summary>
|
||||||
同步实体类型集合到数据库
|
同步实体类型集合到数据库
|
||||||
</summary>
|
</summary>
|
||||||
<param name="entityTypes"></param>
|
<param name="entityTypes"></param>
|
||||||
<returns></returns>
|
|
||||||
</member>
|
</member>
|
||||||
<member name="M:FreeSql.ICodeFirst.SyncStructure(System.Type,System.String)">
|
<member name="M:FreeSql.ICodeFirst.SyncStructure(System.Type,System.String)">
|
||||||
<summary>
|
<summary>
|
||||||
@ -2778,7 +2776,6 @@
|
|||||||
</summary>
|
</summary>
|
||||||
<param name="entityType">实体类型</param>
|
<param name="entityType">实体类型</param>
|
||||||
<param name="tableName">指定表名对比</param>
|
<param name="tableName">指定表名对比</param>
|
||||||
<returns></returns>
|
|
||||||
</member>
|
</member>
|
||||||
<member name="M:FreeSql.ICodeFirst.GetDbInfo(System.Type)">
|
<member name="M:FreeSql.ICodeFirst.GetDbInfo(System.Type)">
|
||||||
<summary>
|
<summary>
|
||||||
|
@ -66,21 +66,18 @@ namespace FreeSql
|
|||||||
/// 同步实体类型到数据库
|
/// 同步实体类型到数据库
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <typeparam name="TEntity"></typeparam>
|
/// <typeparam name="TEntity"></typeparam>
|
||||||
/// <returns></returns>
|
void SyncStructure<TEntity>();
|
||||||
bool SyncStructure<TEntity>();
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 同步实体类型集合到数据库
|
/// 同步实体类型集合到数据库
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="entityTypes"></param>
|
/// <param name="entityTypes"></param>
|
||||||
/// <returns></returns>
|
void SyncStructure(params Type[] entityTypes);
|
||||||
bool SyncStructure(params Type[] entityTypes);
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 同步实体类型到数据库(指定表名)
|
/// 同步实体类型到数据库(指定表名)
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="entityType">实体类型</param>
|
/// <param name="entityType">实体类型</param>
|
||||||
/// <param name="tableName">指定表名对比</param>
|
/// <param name="tableName">指定表名对比</param>
|
||||||
/// <returns></returns>
|
void SyncStructure(Type entityType, string tableName);
|
||||||
bool SyncStructure(Type entityType, string tableName);
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 根据 System.Type 获取数据库信息
|
/// 根据 System.Type 获取数据库信息
|
||||||
|
@ -81,18 +81,18 @@ namespace FreeSql.Internal.CommonProvider
|
|||||||
internal void _dicSycedTryAdd(Type entityType, string tableName = null) =>
|
internal void _dicSycedTryAdd(Type entityType, string tableName = null) =>
|
||||||
_dicSycedGetOrAdd(entityType).TryAdd(GetTableNameLowerOrUpper(tableName), true);
|
_dicSycedGetOrAdd(entityType).TryAdd(GetTableNameLowerOrUpper(tableName), true);
|
||||||
|
|
||||||
public bool SyncStructure<TEntity>() =>
|
public void SyncStructure<TEntity>() =>
|
||||||
this.SyncStructure(new TypeAndName(typeof(TEntity), ""));
|
this.SyncStructure(new TypeAndName(typeof(TEntity), ""));
|
||||||
public bool SyncStructure(params Type[] entityTypes) => entityTypes == null ? false :
|
public void SyncStructure(params Type[] entityTypes) =>
|
||||||
this.SyncStructure(entityTypes.Distinct().Select(a => new TypeAndName(a, "")).ToArray());
|
this.SyncStructure(entityTypes?.Distinct().Select(a => new TypeAndName(a, "")).ToArray());
|
||||||
public bool SyncStructure(Type entityType, string tableName) =>
|
public void SyncStructure(Type entityType, string tableName) =>
|
||||||
this.SyncStructure(new TypeAndName(entityType, GetTableNameLowerOrUpper(tableName)));
|
this.SyncStructure(new TypeAndName(entityType, GetTableNameLowerOrUpper(tableName)));
|
||||||
protected bool SyncStructure(params TypeAndName[] objects)
|
protected void SyncStructure(params TypeAndName[] objects)
|
||||||
{
|
{
|
||||||
if (objects == null) return false;
|
if (objects == null) return;
|
||||||
var syncObjects = objects.Where(a => _dicSycedGetOrAdd(a.entityType).ContainsKey(GetTableNameLowerOrUpper(a.tableName)) == false && GetTableByEntity(a.entityType)?.DisableSyncStructure == false)
|
var syncObjects = objects.Where(a => _dicSycedGetOrAdd(a.entityType).ContainsKey(GetTableNameLowerOrUpper(a.tableName)) == false && GetTableByEntity(a.entityType)?.DisableSyncStructure == false)
|
||||||
.Select(a => new TypeAndName(a.entityType, GetTableNameLowerOrUpper(a.tableName))).ToArray();
|
.Select(a => new TypeAndName(a.entityType, GetTableNameLowerOrUpper(a.tableName))).ToArray();
|
||||||
if (syncObjects.Any() == false) return false;
|
if (syncObjects.Any() == false) return;
|
||||||
var before = new Aop.SyncStructureBeforeEventArgs(syncObjects.Select(a => a.entityType).ToArray());
|
var before = new Aop.SyncStructureBeforeEventArgs(syncObjects.Select(a => a.entityType).ToArray());
|
||||||
_orm.Aop.SyncStructureBeforeHandler?.Invoke(this, before);
|
_orm.Aop.SyncStructureBeforeHandler?.Invoke(this, before);
|
||||||
Exception exception = null;
|
Exception exception = null;
|
||||||
@ -105,11 +105,11 @@ namespace FreeSql.Internal.CommonProvider
|
|||||||
if (string.IsNullOrEmpty(ddl))
|
if (string.IsNullOrEmpty(ddl))
|
||||||
{
|
{
|
||||||
foreach (var syncObject in syncObjects) _dicSycedTryAdd(syncObject.entityType, syncObject.tableName);
|
foreach (var syncObject in syncObjects) _dicSycedTryAdd(syncObject.entityType, syncObject.tableName);
|
||||||
return true;
|
return;
|
||||||
}
|
}
|
||||||
var affrows = ExecuteDDLStatements(ddl);
|
var affrows = ExecuteDDLStatements(ddl);
|
||||||
foreach (var syncObject in syncObjects) _dicSycedTryAdd(syncObject.entityType, syncObject.tableName);
|
foreach (var syncObject in syncObjects) _dicSycedTryAdd(syncObject.entityType, syncObject.tableName);
|
||||||
return true;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user