1

在实体框架中处理网络错误的最佳方法是什么?每次我与 Azure SQL 数据库的 Internet 连接不佳时,都会收到以下错误:

基础提供程序在打开时失败。
建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。

我知道这个错误是由工作中的互联网连接的稳定性引起的,所以我不是试图修复错误,而是优雅地处理它给用户。

我可以使用 try catch,但我必须修改每个尝试使用连接的类中的每一行。

一种替代方法是使用存储库进行连接并在那里处理错误,但是重构代码的每个部分都需要大量时间。所以我正在寻找替代品。

示例

Context DB = new Context();

List<Persona> lista = new List<Persona>();
List<Persona> listaTemporal = new List<Persona>();

listaTemporal = DB.Personas.Where(one => one.Activo == true && 
                                         one.FechaEstadoInicialSAP != null)
                           .ToList();  // it stops here because of the exception
4

1 回答 1

1

这是一个很好的指针,其中包含用于实施重试策略的代码示例: https ://msdn.microsoft.com/en-us/data/dn456835.aspx?f=255&MSPPError=-2147217396

谢谢,米哈埃拉

于 2016-05-16T17:03:17.077 回答