gbn*_*gbn 33
不是.这是按命令,而不是每个连接.
编辑,2013年5月
根据评论要求:
关于SQL Server(DBA.SE)中的命令和执行超时的更多注释.还有更多的东西:当连接关闭时,未提交的事务会发生什么?
小智 15
您始终能够通过 SqlClient 连接字符串指定连接超时,这适用于与数据库服务器建立连接,而不是执行命令/运行查询。默认连接超时为 15 秒。
随着 Microsoft.Data.SqlClient v2.1 的发布,引入了“命令超时”连接字符串属性,可以根据需要覆盖此属性的默认值 30 秒。因此,现在可以通过连接字符串设置默认命令超时。
为了在 EF Core 3 和 5 中使用此新功能,您必须通过将以下内容添加到项目文件中来添加对更新的 SqlClient 包的显式依赖项:
<PackageReference Include="Microsoft.Data.SqlClient" Version="2.1.0" />
Run Code Online (Sandbox Code Playgroud)
此外,您必须更新连接字符串以增加默认命令超时 - 请记住,这将适用于您的整个应用程序,除非通过设置 SqlCommand.CommandTimeout 属性在代码中覆盖。
连接字符串示例:
"YourDatabaseAlias": "Server={serverURL}; Initial Catalog={db}; Integrated Security=true; Command Timeout=60"
Run Code Online (Sandbox Code Playgroud)
上面的连接字符串将命令超时设置为 1 分钟(60 秒)。
希望这有用。
我在下面的连接字符串中尝试了参数命令超时的不同值,并且每次都按预期工作。
Data Source=Your_Db_Server;Initial Catalog=Your_DB;Integrated Security=true;TrustServerCertificate=true;Connect Timeout=600;Command Timeout=120
Run Code Online (Sandbox Code Playgroud)