如何确保在使用Entity Framework时数据库服务器始终可用?

时间:2016-10-18 14:20:16

标签: c# sql-server entity-framework

我在VS2015中使用Entity Framework,我想确保每次从实体获取/删除数据时,数据库服务器始终处于良好的连接状态。

我知道一些处理异常的方法,但有没有更好的方法我不必为每个函数添加try catch?感谢。

1 个答案:

答案 0 :(得分:1)

对于我们的一个项目,我们使用Polly来处理连接到数据库时的瞬态错误,并且喜欢它。

  

Polly是一个.NET库,允许开发人员表达瞬态   异常和故障处理策略,如重试,重试永远,   等待和重试或断路器以流畅和线程安全的方式。

我们已将Polly配置为处理连接失败的异常,并在我们的案例中重试

    // Retry multiple times, calling an action on each retry  
    // with the current exception and retry count Policy
        .Handle<ExceptionIWAntToHandle>()
        .Retry(3, (exception, retryCount) =>
        {
            // do something 
        });

正如评论中所建议的那样,有一个集中的位置。