There is already an open DataReader associated with this Connection which must be closed first.问题记录

There is already an open DataReader associated with this Connection which must be closed first.问题记录

  1. 当进行两次链接报错
public async Task<IActionResult> ManageUserRoles([FromQuery] string userId)
        {
        //1.第一次链接
            var user = await _userManager.FindByIdAsync(userId);
            if (user == null)
            {
             
                return Ok();
            }
            var model = new List<RolesInUserViewModel>();
            foreach (var role in _roleManager.Roles)
            {
                var rolesInUserViewModel = new RolesInUserViewModel
                {
                    roleid = role.Id,
                    rolename = role.Name
                };
                //第二次链接
                //判断当前的用户是否已经拥有该角色信息
                if (await _userManager.IsInRoleAsync(user, role.Name))
                {
                    //将已经拥有的角色信息设置为选中
                    rolesInUserViewModel.isselected = true;
                }
                else
                {
                    rolesInUserViewModel.isselected = false;
                }
                model.Add(rolesInUserViewModel);
            }
            return Ok(model);
            }

2.解决

    "ConnectionSqlServer": "server=localhost;uid=sa;pwd=123456;database=newcategory;Integrated Security=False;MultipleActiveResultSets=True"
    

在链接字符串中加入MultipleActiveResultSets=True

posted @ 2021-10-14 09:30  有诗亦有远方  阅读(42)  评论(0)    收藏  举报  来源