在连接慢速sql server 时容易出现 The connection does not support Multi 返回

反馈
2 831

MultipleActiveResultSetsError.png

复现条件:

1. 连接数据库的出口带宽必须很小, 我的测试数据库部署在阿里云上, 出口带宽只有1M; 如果是localhost则不能复现

2. SqlSugarClient必须在某个class的构造器中创建, 这个class 还必须是DI注入到controller里; 如果在调用方法里创建 SqlSugarClient, 则不会复现

3. 调用的方法必须是async / await 异步的

4. 环境:

win10 X64 专业版

visual studio 2017 15.9.18

asp.net core sdk 2.2.402

sqlserver 2012 express


5. 使用附件复现

a. 在远程数据库中执行

USE tempdb;

IF OBJECT_ID('tempdb.dbo.TestTable1') IS NOT NULL

BEGIN

  DROP TABLE tempdb.dbo.TestTable1;

END

CREATE TABLE tempdb.dbo.TestTable1 (Name VARCHAR(50) NOT NULL);

INSERT TestTable1 (Name)  VALUES ('AAAA'),('AAAA'),('AAAA'),('AAAA'),('AAAA'),('AAAA'),('AAAA'),('AAAA'),('AAAA'),('AAAA'),('AAAA'),('AAAA'),('AAAA'),('AAAA'),('AAAA'),('AAAA'),('AAAA'),('AAAA'),('AAAA'),('AAAA'),('AAAA'),('AAAA'),('AAAA');


b. 修改 asp.net core 中的 MyClass.ConnectionString

c. 使用 JMeter 以每秒 20 req/sec 的频率访问, 访问频率越高, 越容易复现



MultipleActiveResultSetsError.zip


热忱回答2

  •     VIP0
    2020/4/29

    大哥,这个问题有解决方案了吗

    0 回复
  • 老兄,你是怎么解决的,我也是出现这种问题,头疼。

    0 回复

版块

学习文档

最新会员

发布达人

回贴达人