请问有谁能指导我如何在EF和SQL Azure中实现重试策略。
请问有谁能指导我如何在EF和SQL Azure中实现重试策略。
var retryPolicy = new RetryPolicy<SqlAzureTransientErrorDetectionStrategy>(
10,
TimeSpan.FromSeconds(0.5),
TimeSpan.FromSeconds(2)
) { FastFirstRetry = true };
context
上执行任何原子操作时,请使用您的重试策略对象。 using(var context = new ... )
{
...//Maybe you do something to the database...
retryPolicy.ExecuteAction(() => context.SaveChanges());
}
Entity Framework 6已经增加了连接恢复能力作为一个新功能,以帮助解决这个问题,引用微软的话:" 使得从短暂的连接故障中自动恢复成为可能 "。如果你想了解更多,请查看EF6 连接恢复规范。