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>
|
||||
</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)">
|
||||
<summary>
|
||||
添加
|
||||
@ -215,6 +222,15 @@
|
||||
</summary>
|
||||
<returns></returns>
|
||||
</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">
|
||||
<summary>
|
||||
注意:IFreeSql 属于顶级对象,事务无法自动传递。<para></para>
|
||||
|
@ -2763,14 +2763,12 @@
|
||||
同步实体类型到数据库
|
||||
</summary>
|
||||
<typeparam name="TEntity"></typeparam>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:FreeSql.ICodeFirst.SyncStructure(System.Type[])">
|
||||
<summary>
|
||||
同步实体类型集合到数据库
|
||||
</summary>
|
||||
<param name="entityTypes"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:FreeSql.ICodeFirst.SyncStructure(System.Type,System.String)">
|
||||
<summary>
|
||||
@ -2778,7 +2776,6 @@
|
||||
</summary>
|
||||
<param name="entityType">实体类型</param>
|
||||
<param name="tableName">指定表名对比</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:FreeSql.ICodeFirst.GetDbInfo(System.Type)">
|
||||
<summary>
|
||||
|
@ -66,21 +66,18 @@ namespace FreeSql
|
||||
/// 同步实体类型到数据库
|
||||
/// </summary>
|
||||
/// <typeparam name="TEntity"></typeparam>
|
||||
/// <returns></returns>
|
||||
bool SyncStructure<TEntity>();
|
||||
void SyncStructure<TEntity>();
|
||||
/// <summary>
|
||||
/// 同步实体类型集合到数据库
|
||||
/// </summary>
|
||||
/// <param name="entityTypes"></param>
|
||||
/// <returns></returns>
|
||||
bool SyncStructure(params Type[] entityTypes);
|
||||
void SyncStructure(params Type[] entityTypes);
|
||||
/// <summary>
|
||||
/// 同步实体类型到数据库(指定表名)
|
||||
/// </summary>
|
||||
/// <param name="entityType">实体类型</param>
|
||||
/// <param name="tableName">指定表名对比</param>
|
||||
/// <returns></returns>
|
||||
bool SyncStructure(Type entityType, string tableName);
|
||||
void SyncStructure(Type entityType, string tableName);
|
||||
|
||||
/// <summary>
|
||||
/// 根据 System.Type 获取数据库信息
|
||||
|
@ -81,18 +81,18 @@ namespace FreeSql.Internal.CommonProvider
|
||||
internal void _dicSycedTryAdd(Type entityType, string tableName = null) =>
|
||||
_dicSycedGetOrAdd(entityType).TryAdd(GetTableNameLowerOrUpper(tableName), true);
|
||||
|
||||
public bool SyncStructure<TEntity>() =>
|
||||
public void SyncStructure<TEntity>() =>
|
||||
this.SyncStructure(new TypeAndName(typeof(TEntity), ""));
|
||||
public bool SyncStructure(params Type[] entityTypes) => entityTypes == null ? false :
|
||||
this.SyncStructure(entityTypes.Distinct().Select(a => new TypeAndName(a, "")).ToArray());
|
||||
public bool SyncStructure(Type entityType, string tableName) =>
|
||||
public void SyncStructure(params Type[] entityTypes) =>
|
||||
this.SyncStructure(entityTypes?.Distinct().Select(a => new TypeAndName(a, "")).ToArray());
|
||||
public void SyncStructure(Type entityType, string 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)
|
||||
.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());
|
||||
_orm.Aop.SyncStructureBeforeHandler?.Invoke(this, before);
|
||||
Exception exception = null;
|
||||
@ -105,11 +105,11 @@ namespace FreeSql.Internal.CommonProvider
|
||||
if (string.IsNullOrEmpty(ddl))
|
||||
{
|
||||
foreach (var syncObject in syncObjects) _dicSycedTryAdd(syncObject.entityType, syncObject.tableName);
|
||||
return true;
|
||||
return;
|
||||
}
|
||||
var affrows = ExecuteDDLStatements(ddl);
|
||||
foreach (var syncObject in syncObjects) _dicSycedTryAdd(syncObject.entityType, syncObject.tableName);
|
||||
return true;
|
||||
return;
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
|
Loading…
x
Reference in New Issue
Block a user