Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 我的数据库可能无法用于aprox。有时是1秒。如何防止实体框架连接错误?_.net_Entity Framework - Fatal编程技术网

.net 我的数据库可能无法用于aprox。有时是1秒。如何防止实体框架连接错误?

.net 我的数据库可能无法用于aprox。有时是1秒。如何防止实体框架连接错误?,.net,entity-framework,.net,Entity Framework,我们有一个在ASP.NET MVC 3上运行的关键应用程序 由于我们的故障切换解决方案,当机器崩溃时,数据库可能需要一些时间来恢复,比如说,1秒 实体框架每次保存更改或具体化对象时都会创建连接。此连接可能会失败 我想用Entity Framework实现一些东西,这样当数据库连接失败时,它将在给定时间后再次尝试连接 我希望此解决方案在每个ObjectContext实例中只实现一次,也就是说,我不希望在每个ToList或的前面都加上try/catch 有什么建议吗?您可以尝试创建自己的。这将允许您

我们有一个在ASP.NET MVC 3上运行的关键应用程序

由于我们的故障切换解决方案,当机器崩溃时,数据库可能需要一些时间来恢复,比如说,1秒

实体框架每次保存更改或具体化对象时都会创建连接。此连接可能会失败

我想用Entity Framework实现一些东西,这样当数据库连接失败时,它将在给定时间后再次尝试连接

我希望此解决方案在每个ObjectContext实例中只实现一次,也就是说,我不希望在每个
ToList
的前面都加上try/catch


有什么建议吗?

您可以尝试创建自己的。这将允许您更改数据库连接和数据库命令的逻辑。您必须稍微使用EF,才能找到在包装器中准确放置重试逻辑的位置,但它是在不创建全新提供商的情况下使用的最佳集中位置。

请查看Microsoft,它的创建正是为了满足您的要求。

您是否仍然收到错误,即使您在Entity Framework?@sak的连接字符串中指定了连接超时属性,连接超时也仅在网络拥塞时有效。在我的情况下,它不会立即连接并失败。