我有一个连接到Sql Azure的辅助角色一次检索一条记录,处理它标记它使用Entity Framework 4完成。伪代码
while (true)
{
ProcessRecord();
}
ProcessRecord()
{
try{
ObjectContext oc = new ObjectContext ();
//process records
oc.Dispose()
}
catch(Exception e)
{
//logging code goes here...
}
}
该角色运行得很好但偶尔(比如9小时一次)我收到一个错误 - “基础提供商在Open上失败了。”这是否意味着worker角色无法连接到SQL Server?
答案 0 :(得分:2)
您是否记录了确切的错误代码?一般来说,有很多事情可能会发生。首先,我建议阅读this article,解释其中的很多内容。另请查看this SO question,因为我的答案解释了很多关于Windows Azure SQL数据库的内容。
答案 1 :(得分:1)
这是与here所描述的一些随机环境相关的错误。发生这种情况 - SQL Azure位于单独的计算机上,有时网络请求会失败。你必须重试你的请求,就是这样。