在 ASP.NET MVC 中执行 SQL Server 存储过程时如何防止超时错误?
Posted
技术标签:
【中文标题】在 ASP.NET MVC 中执行 SQL Server 存储过程时如何防止超时错误?【英文标题】:How to prevent timeout error when executing a SQL Server stored procedure in ASP.NET MVC? 【发布时间】:2019-05-27 23:20:15 【问题描述】:我有一个 C# ASP.NET MVC 程序,它在加载页面时运行存储过程。如果我从 Microsoft SQL Server Management Studio 运行存储过程,则需要 1 分钟。但是,如果我尝试从代码中运行相同的存储过程,则会超时。 我在 web.config 中添加了 Connection Timeout=0,但有时可以,有时不行。
【问题讨论】:
尝试设置连接超时=0;在你的 web.config 文件的 connectionString 中 我在 web.config 中添加了 Connection Timeout=0,但有时可以,有时不行。 【参考方案1】:你可以在调用存储过程时将超时命令设置为0。
using (SqlConnection connection = new SqlConnection(connectionString))
connection.Open();
SqlCommand cmd= new SqlCommand(queryString, connection);
// Setting command timeout to 0 second
cmd.CommandTimeout = 0;
try
cmd.ExecuteNonQuery();
catch(Exception ex)
// log ex here
【讨论】:
以上是关于在 ASP.NET MVC 中执行 SQL Server 存储过程时如何防止超时错误?的主要内容,如果未能解决你的问题,请参考以下文章
ASP.NET MVC 5使用Filter过滤Action参数防止sql注入