Dek*_*kim 4 c# sql-server azure hangfire
我刚刚使用Azure SQL发布了Azure网站.
但是,我得到了错误
An existing connection was forcibly closed by the remote host
Run Code Online (Sandbox Code Playgroud)
到达网站时,与Hangfire相关的回调:
[Win32Exception (0x80004005): An existing connection was forcibly closed by the remote host]
[SqlException (0x80131904): A transport-level error has occurred when receiving results from the server. (provider: TCP Provider, error: 0 - An existing connection was forcibly closed by the remote host.)]
System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, SqlCredential credential, Object providerInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString userConnectionOptions, SessionData reconnectSessionData, DbConnectionPool pool, String accessToken, Boolean applyTransientFaultHandling) +830
System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection, DbConnectionOptions userOptions) +329
System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup, DbConnectionOptions userOptions) +38
System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection) +507
System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions) +154
System.Data.ProviderBase.DbConnectionClosed.TryOpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions) +21
System.Data.SqlClient.SqlConnection.TryOpenInner(TaskCompletionSource`1 retry) +90
System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry) +217
System.Data.SqlClient.SqlConnection.Open() +96
Hangfire.SqlServer.SqlServerStorage.CreateAndOpenConnection() +49
Hangfire.SqlServer.SqlServerStorage.UseConnection(Func`2 func) +41
Hangfire.SqlServer.SqlServerStorage.UseTransaction(Func`2 func, Nullable`1 isolationLevel) +84
Hangfire.SqlServer.SqlServerStorage.UseTransaction(Action`1 action) +73
Hangfire.SqlServer.SqlServerWriteOnlyTransaction.Commit() +47
Hangfire.RecurringJobManager.AddOrUpdate(String recurringJobId, Job job, String cronExpression, TimeZoneInfo timeZone, String queue) +277
Run Code Online (Sandbox Code Playgroud)
任何的想法?
小智 7
我有完全相同的问题.如果您像我一样从Azure门户数据库设置页面复制了连接字符串,请尝试删除Pooling=False;.这为我解决了这个问题.
对不起,我没有很好地解释为什么这会导致Hangfire失败.但通常情况下,您仍希望启用连接池.
| 归档时间: |
|
| 查看次数: |
1078 次 |
| 最近记录: |