当前位置:  开发笔记 > 编程语言 > 正文

使用ADO.Net的查询的连接超时异常

如何解决《使用ADO.Net的查询的连接超时异常》经验,为你挑选了1个好方法。



1> Gulzar Nazim..:

由于您使用的ExecuteNonQuery不返回任何行,因此您可以尝试这种基于轮询的方法.它以asyc方式执行查询(没有回调),但应用程序将等待(在while循环内),直到查询完成.来自MSDN.这应该解决超时问题.请试一试.

但是,我同意其他人的意见,你应该多考虑优化查询,以便在30秒内执行.

        IAsyncResult result = command.BeginExecuteNonQuery();

        int count = 0;
        while (!result.IsCompleted)
        {
            Console.WriteLine("Waiting ({0})", count++);
            System.Threading.Thread.Sleep(1000);
        }
        Console.WriteLine("Command complete. Affected {0} rows.",
        command.EndExecuteNonQuery(result));


我不是百分百肯定,但我不认为SqlConnection可以超时 - 据我所知,只打开一个新连接可能会超时(默认为15秒).所以我仍然认为命令超时(如果命令在尝试从连接读取时超时,则可能看起来像连接超时.).
推荐阅读
手机用户2502851955
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有