Skip to content

Commit 780b963

Browse files
2881028810
authored andcommitted
- 修复 读写分离创建 IFreeSql 时如果从库不可用导致 iis 退出的 bug;
1 parent 34ba9fb commit 780b963

File tree

16 files changed

+32
-41
lines changed

16 files changed

+32
-41
lines changed

Examples/dbcontext_01/Controllers/ValuesController.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -235,9 +235,9 @@ async public Task<string> Get()
235235

236236
// GET api/values/5
237237
[HttpGet("{id}")]
238-
public ActionResult<string> Get(int id)
238+
public ActionResult<object> Get(int id)
239239
{
240-
return "value";
240+
return _orm.Select<Song>().Where(a => a.Id == id).First();
241241
}
242242

243243
// POST api/values

Examples/dbcontext_01/Startup.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,9 @@ public Startup(IConfiguration configuration, ILoggerFactory loggerFactory)
2020
.UseConnectionString(FreeSql.DataType.Sqlite, @"Data Source=|DataDirectory|\document2.db;Pooling=true;Max Pool Size=10")
2121
//.UseConnectionString(FreeSql.DataType.SqlServer, "Data Source=.;Integrated Security=True;Initial Catalog=freesqlTest;Pooling=true;Max Pool Size=10")
2222

23+
//.UseConnectionString(DataType.MySql, "Data Source=192.168.164.10;Port=33061;User ID=root;Password=123456;Initial Catalog=cccddd;Charset=utf8;SslMode=none;Max pool size=5")
24+
//.UseSlave("Data Source=192.168.164.10;Port=33062;User ID=root;Password=123456;Initial Catalog=cccddd;Charset=utf8;SslMode=none;Max pool size=5")
25+
2326
//.UseConnectionString(FreeSql.DataType.Oracle, "user id=user1;password=123456;data source=//127.0.0.1:1521/XE;Pooling=true;Max Pool Size=10")
2427
//.UseSyncStructureToUpper(true)
2528

Examples/dbcontext_01/dbcontext_01.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
<ItemGroup>
1313
<ProjectReference Include="..\..\Extensions\FreeSql.Extensions.LazyLoading\FreeSql.Extensions.LazyLoading.csproj" />
1414
<ProjectReference Include="..\..\FreeSql.DbContext\FreeSql.DbContext.csproj" />
15+
<ProjectReference Include="..\..\Providers\FreeSql.Provider.MySql\FreeSql.Provider.MySql.csproj" />
1516
<ProjectReference Include="..\..\Providers\FreeSql.Provider.Sqlite\FreeSql.Provider.Sqlite.csproj" />
1617
</ItemGroup>
1718

Providers/FreeSql.Provider.MsAccess/MsAccessAdo/MsAccessConnectionPool.cs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,16 +19,15 @@ class MsAccessConnectionPool : ObjectPool<DbConnection>
1919

2020
public MsAccessConnectionPool(string name, string connectionString, Action availableHandler, Action unavailableHandler) : base(null)
2121
{
22+
this.availableHandler = availableHandler;
23+
this.unavailableHandler = unavailableHandler;
2224
var policy = new AccessConnectionPoolPolicy
2325
{
2426
_pool = this,
2527
Name = name
2628
};
2729
this.Policy = policy;
2830
policy.ConnectionString = connectionString;
29-
30-
this.availableHandler = availableHandler;
31-
this.unavailableHandler = unavailableHandler;
3231
}
3332

3433
public void Return(Object<DbConnection> obj, Exception exception, bool isRecreate = false)

Providers/FreeSql.Provider.MySql/MySqlAdo/MySqlConnectionPool.cs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,16 +19,15 @@ class MySqlConnectionPool : ObjectPool<DbConnection>
1919

2020
public MySqlConnectionPool(string name, string connectionString, Action availableHandler, Action unavailableHandler) : base(null)
2121
{
22+
this.availableHandler = availableHandler;
23+
this.unavailableHandler = unavailableHandler;
2224
var policy = new MySqlConnectionPoolPolicy
2325
{
2426
_pool = this,
2527
Name = name
2628
};
2729
this.Policy = policy;
2830
policy.ConnectionString = connectionString;
29-
30-
this.availableHandler = availableHandler;
31-
this.unavailableHandler = unavailableHandler;
3231
}
3332

3433
public void Return(Object<DbConnection> obj, Exception exception, bool isRecreate = false)

Providers/FreeSql.Provider.Odbc/Dameng/OdbcDamengAdo/OdbcDamengConnectionPool.cs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,16 +23,15 @@ public OdbcDamengConnectionPool(string name, string connectionString, Action ava
2323
{
2424
this.UserId = OdbcDamengConnectionPool.GetUserId(connectionString);
2525

26+
this.availableHandler = availableHandler;
27+
this.unavailableHandler = unavailableHandler;
2628
var policy = new OdbcOracleConnectionPoolPolicy
2729
{
2830
_pool = this,
2931
Name = name
3032
};
3133
this.Policy = policy;
3234
policy.ConnectionString = connectionString;
33-
34-
this.availableHandler = availableHandler;
35-
this.unavailableHandler = unavailableHandler;
3635
}
3736

3837
public static string GetUserId(string connectionString)

Providers/FreeSql.Provider.Odbc/Default/OdbcAdo/OdbcConnectionPool.cs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,16 +19,15 @@ class OdbcConnectionPool : ObjectPool<DbConnection>
1919

2020
public OdbcConnectionPool(string name, string connectionString, Action availableHandler, Action unavailableHandler) : base(null)
2121
{
22+
this.availableHandler = availableHandler;
23+
this.unavailableHandler = unavailableHandler;
2224
var policy = new OdbcConnectionPoolPolicy
2325
{
2426
_pool = this,
2527
Name = name
2628
};
2729
this.Policy = policy;
2830
policy.ConnectionString = connectionString;
29-
30-
this.availableHandler = availableHandler;
31-
this.unavailableHandler = unavailableHandler;
3231
}
3332

3433
public void Return(Object<DbConnection> obj, Exception exception, bool isRecreate = false)

Providers/FreeSql.Provider.Odbc/GBase/OdbcGBaseAdo/OdbcGBaseConnectionPool.cs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,16 +22,15 @@ class OdbcGBaseConnectionPool : ObjectPool<DbConnection>
2222

2323
public OdbcGBaseConnectionPool(string name, string connectionString, Action availableHandler, Action unavailableHandler) : base(null)
2424
{
25+
this.availableHandler = availableHandler;
26+
this.unavailableHandler = unavailableHandler;
2527
var policy = new OdbcPostgreSQLConnectionPoolPolicy
2628
{
2729
_pool = this,
2830
Name = name
2931
};
3032
this.Policy = policy;
3133
policy.ConnectionString = connectionString;
32-
33-
this.availableHandler = availableHandler;
34-
this.unavailableHandler = unavailableHandler;
3534
}
3635

3736
public void Return(Object<DbConnection> obj, Exception exception, bool isRecreate = false)

Providers/FreeSql.Provider.Odbc/MySql/OdbcMySqlAdo/OdbcMySqlConnectionPool.cs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,16 +19,15 @@ class OdbcMySqlConnectionPool : ObjectPool<DbConnection>
1919

2020
public OdbcMySqlConnectionPool(string name, string connectionString, Action availableHandler, Action unavailableHandler) : base(null)
2121
{
22+
this.availableHandler = availableHandler;
23+
this.unavailableHandler = unavailableHandler;
2224
var policy = new OdbcMySqlConnectionPoolPolicy
2325
{
2426
_pool = this,
2527
Name = name
2628
};
2729
this.Policy = policy;
2830
policy.ConnectionString = connectionString;
29-
30-
this.availableHandler = availableHandler;
31-
this.unavailableHandler = unavailableHandler;
3231
}
3332

3433
public void Return(Object<DbConnection> obj, Exception exception, bool isRecreate = false)

Providers/FreeSql.Provider.Odbc/Oracle/OdbcOracleAdo/OdbcOracleConnectionPool.cs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,16 +23,15 @@ public OdbcOracleConnectionPool(string name, string connectionString, Action ava
2323
{
2424
this.UserId = OdbcOracleConnectionPool.GetUserId(connectionString);
2525

26+
this.availableHandler = availableHandler;
27+
this.unavailableHandler = unavailableHandler;
2628
var policy = new OdbcOracleConnectionPoolPolicy
2729
{
2830
_pool = this,
2931
Name = name
3032
};
3133
this.Policy = policy;
3234
policy.ConnectionString = connectionString;
33-
34-
this.availableHandler = availableHandler;
35-
this.unavailableHandler = unavailableHandler;
3635
}
3736

3837
public static string GetUserId(string connectionString)

0 commit comments

Comments
 (0)