diff --git a/FreeSql.DbContext/FreeSql.DbContext.xml b/FreeSql.DbContext/FreeSql.DbContext.xml
index 594fbad3..26522f10 100644
--- a/FreeSql.DbContext/FreeSql.DbContext.xml
+++ b/FreeSql.DbContext/FreeSql.DbContext.xml
@@ -733,6 +733,15 @@
+
+
+ 根据Assembly扫描所有继承IEntityTypeConfiguration<T>的配置类
+
+
+
+
+
+
创建普通数据上下文档对象
@@ -791,5 +800,14 @@
+
+
+ 批量注入 Repository,可以参考代码自行调整
+
+
+
+
+
+
diff --git a/FreeSql.Tests/FreeSql.Tests/SqlServer/SqlServerCodeFirstTest.cs b/FreeSql.Tests/FreeSql.Tests/SqlServer/SqlServerCodeFirstTest.cs
index 6e4685ad..28ee5c9e 100644
--- a/FreeSql.Tests/FreeSql.Tests/SqlServer/SqlServerCodeFirstTest.cs
+++ b/FreeSql.Tests/FreeSql.Tests/SqlServer/SqlServerCodeFirstTest.cs
@@ -612,8 +612,8 @@ WHERE ([id] = '{item.id}')", fsql.Update().NoneParameter().Set(a =
[Fact]
public void AddUniques()
{
- var sql = g.sqlserver.CodeFirst.GetComparisonDDLStatements();
g.sqlserver.CodeFirst.SyncStructure();
+ var sql = g.sqlserver.CodeFirst.GetComparisonDDLStatements();
g.sqlserver.CodeFirst.SyncStructure(typeof(AddUniquesInfo), "AddUniquesInfo1");
}
[Table(Name = "AddUniquesInfo", OldName = "AddUniquesInfo2")]
diff --git a/Providers/FreeSql.Provider.ClickHouse/ClickHouseCodeFirst.cs b/Providers/FreeSql.Provider.ClickHouse/ClickHouseCodeFirst.cs
index 363f8d84..2264d4be 100644
--- a/Providers/FreeSql.Provider.ClickHouse/ClickHouseCodeFirst.cs
+++ b/Providers/FreeSql.Provider.ClickHouse/ClickHouseCodeFirst.cs
@@ -480,7 +480,9 @@ where a.database in ({0}) and a.table in ({1})", tboldname ?? tbname);
using (var cmd = conn.Value.CreateCommand())
{
cmd.CommandText = sql;
- cmd.CommandType = CommandType.Text;
+ cmd.CommandType = CommandType.Text;
+ var before = new Aop.CommandBeforeEventArgs(cmd);
+ this._orm?.Aop.CommandBeforeHandler?.Invoke(this._orm, before);
return cmd.ExecuteScalar();
}
}
diff --git a/Providers/FreeSql.Provider.Custom/MySql/CustomMySqlCodeFirst.cs b/Providers/FreeSql.Provider.Custom/MySql/CustomMySqlCodeFirst.cs
index bee6e372..d381d2c1 100644
--- a/Providers/FreeSql.Provider.Custom/MySql/CustomMySqlCodeFirst.cs
+++ b/Providers/FreeSql.Provider.Custom/MySql/CustomMySqlCodeFirst.cs
@@ -78,7 +78,7 @@ namespace FreeSql.Custom.MySql
{
Object conn = null;
string database = null;
-
+
try
{
conn = _orm.Ado.MasterPool.Get(TimeSpan.FromSeconds(5));
@@ -382,6 +382,8 @@ where a.table_schema IN ({0}) and a.table_name IN ({1}) and a.index_name <> 'PRI
{
cmd.CommandText = sql;
cmd.CommandType = CommandType.Text;
+ var before = new Aop.CommandBeforeEventArgs(cmd);
+ this._orm?.Aop.CommandBeforeHandler?.Invoke(this._orm, before);
return cmd.ExecuteScalar();
}
}
diff --git a/Providers/FreeSql.Provider.Custom/SqlServer/CustomSqlServerCodeFirst.cs b/Providers/FreeSql.Provider.Custom/SqlServer/CustomSqlServerCodeFirst.cs
index 96513be2..15e66e4e 100644
--- a/Providers/FreeSql.Provider.Custom/SqlServer/CustomSqlServerCodeFirst.cs
+++ b/Providers/FreeSql.Provider.Custom/SqlServer/CustomSqlServerCodeFirst.cs
@@ -474,6 +474,8 @@ use [" + database + "];", tboldname ?? tbname);
{
cmd.CommandText = sql;
cmd.CommandType = CommandType.Text;
+ var before = new Aop.CommandBeforeEventArgs(cmd);
+ this._orm?.Aop.CommandBeforeHandler?.Invoke(this._orm, before);
return cmd.ExecuteScalar();
}
}
diff --git a/Providers/FreeSql.Provider.GBase/GBaseCodeFirst.cs b/Providers/FreeSql.Provider.GBase/GBaseCodeFirst.cs
index 60a834fa..cc96cc02 100644
--- a/Providers/FreeSql.Provider.GBase/GBaseCodeFirst.cs
+++ b/Providers/FreeSql.Provider.GBase/GBaseCodeFirst.cs
@@ -186,7 +186,9 @@ namespace FreeSql.GBase
using (var cmd = conn.Value.CreateCommand())
{
cmd.CommandText = sql;
- cmd.CommandType = CommandType.Text;
+ cmd.CommandType = CommandType.Text;
+ var before = new Aop.CommandBeforeEventArgs(cmd);
+ this._orm?.Aop.CommandBeforeHandler?.Invoke(this._orm, before);
return cmd.ExecuteScalar();
}
}
diff --git a/Providers/FreeSql.Provider.MySql/MySqlCodeFirst.cs b/Providers/FreeSql.Provider.MySql/MySqlCodeFirst.cs
index 7aac0ed7..6a9fbb86 100644
--- a/Providers/FreeSql.Provider.MySql/MySqlCodeFirst.cs
+++ b/Providers/FreeSql.Provider.MySql/MySqlCodeFirst.cs
@@ -393,6 +393,8 @@ where a.table_schema IN ({0}) and a.table_name IN ({1}) and a.index_name <> 'PRI
{
cmd.CommandText = sql;
cmd.CommandType = CommandType.Text;
+ var before = new Aop.CommandBeforeEventArgs(cmd);
+ this._orm?.Aop.CommandBeforeHandler?.Invoke(this._orm, before);
return cmd.ExecuteScalar();
}
}
diff --git a/Providers/FreeSql.Provider.Odbc/MySql/OdbcMySqlCodeFirst.cs b/Providers/FreeSql.Provider.Odbc/MySql/OdbcMySqlCodeFirst.cs
index 547e3455..7825d5d8 100644
--- a/Providers/FreeSql.Provider.Odbc/MySql/OdbcMySqlCodeFirst.cs
+++ b/Providers/FreeSql.Provider.Odbc/MySql/OdbcMySqlCodeFirst.cs
@@ -383,6 +383,8 @@ where a.table_schema IN ({0}) and a.table_name IN ({1}) and a.index_name <> 'PRI
{
cmd.CommandText = sql;
cmd.CommandType = CommandType.Text;
+ var before = new Aop.CommandBeforeEventArgs(cmd);
+ this._orm?.Aop.CommandBeforeHandler?.Invoke(this._orm, before);
return cmd.ExecuteScalar();
}
}
diff --git a/Providers/FreeSql.Provider.Odbc/SqlServer/OdbcSqlServerCodeFirst.cs b/Providers/FreeSql.Provider.Odbc/SqlServer/OdbcSqlServerCodeFirst.cs
index 2a182b8b..8445c9e9 100644
--- a/Providers/FreeSql.Provider.Odbc/SqlServer/OdbcSqlServerCodeFirst.cs
+++ b/Providers/FreeSql.Provider.Odbc/SqlServer/OdbcSqlServerCodeFirst.cs
@@ -475,6 +475,8 @@ use [" + database + "];", tboldname ?? tbname);
{
cmd.CommandText = sql;
cmd.CommandType = CommandType.Text;
+ var before = new Aop.CommandBeforeEventArgs(cmd);
+ this._orm?.Aop.CommandBeforeHandler?.Invoke(this._orm, before);
return cmd.ExecuteScalar();
}
}
diff --git a/Providers/FreeSql.Provider.SqlServer/SqlServerCodeFirst.cs b/Providers/FreeSql.Provider.SqlServer/SqlServerCodeFirst.cs
index 39b524f9..ae18b74e 100644
--- a/Providers/FreeSql.Provider.SqlServer/SqlServerCodeFirst.cs
+++ b/Providers/FreeSql.Provider.SqlServer/SqlServerCodeFirst.cs
@@ -477,6 +477,8 @@ use [" + database + "];", tboldname ?? tbname);
{
cmd.CommandText = sql;
cmd.CommandType = CommandType.Text;
+ var before = new Aop.CommandBeforeEventArgs(cmd);
+ this._orm?.Aop.CommandBeforeHandler?.Invoke(this._orm, before);
return cmd.ExecuteScalar();
}
}