我们在 Web API 2.0 代码中实现了实体框架。要调用数据库实体,我们使用存储过程调用。我们的整个应用程序托管在Microsoft Azure云中。以下是我们面临的两个例外情况。
消息:执行命令定义时发生错误。有关详细信息,请参阅内部异常。
InnerException:超时已过期。操作完成之前经过的超时时间或服务器没有响应。尝试连接到Principle服务器时发生此故障。
我们面临的另一个例外是:
消息:基础提供程序在Open上失败。
InnerException:连接未关闭。连接的当前状态正在连接。
注意:代码在C#Web API 2.0中。我们使用Entity Framework来调用Store Procedure。数据库位于SQL Server 2012中。在web.config中,连接字符串如下所示:
<add name="*****Entities" connectionString="metadata=res://*/Models.Database.*****.csdl|res://*/Models.Database.*****.ssdl|res://*/Models.Database.*****.msl;provider=System.Data.SqlClient;provider connection string="data source=*****;Failover Partner=*****;initial catalog=*****;user id=*****;password=********;MultipleActiveResultSets=True;Pooling=false;Connection Lifetime=2;App=EntityFramework"" providerName="System.Data.EntityClient" />
此外,这个错误并不是连续的,我们猜测这可能是网络问题或交通繁忙时发生的。但我们仍然没有任何确切的理由。
请为我们提供相同的解决方案。