Microsoft ReliableSqlConnection文档报告称;该内容和所描述的技术已经过时并且不再被维护";。
ReliableSqlConnection是否已弃用?
我为什么要问这个问题的背景
我们最近将我们的网站作为Azure应用程序服务迁移到云端,并拥有一个SQL Azure实例。
我正在进行更新,以处理实体框架查询的暂时错误,现在专注于ADO.NET。
我们通过一个助手类在整个应用程序中使用ReliableSqlConnection,该助手类创建了包括重试逻辑的新连接。这已经实施了好几年了。
由于SQLAzure已经存在多年了,我发现了许多关于最佳策略的帖子。许多引用使用SqlConnection,其他引用ReliableSqlConnection。
现在有Azure SQL连接的首选连接吗?
现在已经将其烘焙到SqlClient本身中。文档中的简介解释了如何使用可配置的重试选项打开连接:
// Define the retry logic parameters
var options = new SqlRetryLogicOption()
{
// Tries 5 times before throwing an exception
NumberOfTries = 5,
// Preferred gap time to delay before retry
DeltaTime = TimeSpan.FromSeconds(1),
// Maximum gap time for each delay time before retry
MaxTimeInterval = TimeSpan.FromSeconds(20)
};
// Create a retry logic provider
SqlRetryLogicBaseProvider provider = SqlConfigurableRetryFactory.CreateExponentialRetryProvider(options);
// Assumes that connection is a valid SqlConnection object
// Set the retry logic provider on the connection instance
connection.RetryLogicProvider = provider;
// Establishing the connection will retry if a transient failure occurs.
connection.Open();