繁体   English   中英

SQL Server异常:超时已过期。 操作完成之前经过的超时时间或服务器未响应

[英]SQL Server Exception:Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding

我在asp.net中创建了一个登录页面,并在asp.net成员身份中创建了一个用户和角色,登录后我在页面加载方法中有一个查询,以检查用户的角色并按该用户显示页面视图但我收到此错误。

超时时间已到。 在操作完成之前超时或服务器没有响应。

我的代码:

protected void Page_Load(object sender, EventArgs e)
{
    if (Page.User.Identity.IsAuthenticated)
    {

        if (Roles.IsUserInRole("Manager"))
        {

            NavigationMenu.Visible = false;
            NavigateMenu1.Visible = true;

                creategrid();
        }
    }
}

仅当我第一次运行我的应用程序并且刷新页面尝试再次登录时才发生此异常,因此没有异常。 请帮我,因为我是新来的。

该错误消息试图说明,建立连接要花费比默认超时时间更长的时间。

尽管您可以增加超时时间,但我建议您不要这样做。

找出原因。.如果它频繁发生,则可能是您的连接池当时可能没有足够的连接..如果是这样,您可以增加最小池大小或最大池大小并具有合理的连接生存时间等,

参见http://msdn.microsoft.com/zh-cn/library/8xx3tyca(v=vs.71).aspx

在命令对象中设置commandTmeout属性。

cmd.CommandTimeout = 9000;

添加您的SqlCommand超时。 请添加时间以second

// Setting command timeout to 1 second
 cmd.CommandTimeout = 1;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM