关于使用数据库连接类在多个框架页同时访问数据库的问题

samven samven 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
Database.cs:


using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;

namespace CMIR.OPEN
{
public class Database
{
//连接字符串
private static SqlConnection cn;

//获取连接字符串
internal static string getconnstr()
{
string constr;
constr = System.Configuration.ConfigurationManager.ConnectionStrings["connstring"].ToString();
return constr;
}

//打开数据库
internal static void open()
{
string constr;
constr = getconnstr();
cn = new SqlConnection(constr);
if (cn.State != ConnectionState.Open)
{
cn.Open();
}
}

//关闭数据库
internal static void close()
{
cn.Dispose();
cn.Close();
}

//返回DataReader对象
internal static SqlDataReader datareader(string sql)
{
open();
SqlCommand cmd = new SqlCommand(sql, cn);
SqlDataReader dr = cmd.ExecuteReader();
return dr;
}
}
}


a.aspx.cs:

SqlDataReader dr = Database.datareader("select * from Table");
if (dr.Read())
{
;
}
dr.Close();
Database.close();


B.aspx:

<iframe src="a.aspx"></iframe>
<iframe src="a.aspx"></iframe>
<iframe src="a.aspx"></iframe>
<iframe src="a.aspx"></iframe>
<iframe src="a.aspx"></iframe>
<iframe src="a.aspx"></iframe>
<iframe src="a.aspx"></iframe>
<iframe src="a.aspx"></iframe>
<iframe src="a.aspx"></iframe>
<iframe src="a.aspx"></iframe>
<iframe src="a.aspx"></iframe>
<iframe src="a.aspx"></iframe>
<iframe src="a.aspx"></iframe>
<iframe src="a.aspx"></iframe>
<iframe src="a.aspx"></iframe>
<iframe src="a.aspx"></iframe>
<iframe src="a.aspx"></iframe>
<iframe src="a.aspx"></iframe>


访问b.aspx页面后在iframe里出现.net错误:

ExecuteReader 要求已打开且可用的连接。连接的当前状态为正在连接。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.InvalidOperationException: ExecuteReader 要求已打开且可用的连接。连接的当前状态为正在连接。


请问我的程序哪里有错误?如何修改数据库连接类?谢谢!帮助解决给50分!
...全文

相关推荐

基于恒阻抗负荷模型与母线三相短路扰动条件下三机九节点系统多频段电力系统稳定器暂态稳定性能评估(Simulink仿真实现)

内容概要:本文系统阐述了一套基于优先级规划与Petri网融合的多机器人路径规划(MAPF)MATLAB代码库,该框架将求解过程划分为几何解析、拓扑构建、调度优化与可视化呈现四个层次,实现了从地图解析、四邻域拓扑与Petri网建模,到基于优先级启发式的路径搜索、时间同步与冲突消解,再到动画与视频输出的完整闭环。其核心创新在于采用Petri网将“多机器人无冲突”这一动态时间约束转化为“每库所至多一标记”的静态容量约束,从而支持整数规划求解;并通过动态边权膨胀机制避免因硬封锁导致的虚假不可解问题,结合节点预留历史与几何惩罚驱动的局部同步策略,显著提升了冲突查询效率与调度性能。框架还支持双坐标系统与全流程可视化,便于算法行为分析与结果验证。; 适合人群:具备一定编程基础和机器人路径规划基础知识的研究生、科研人员及工程技术人员,尤其适合从事仓储物流、自动驾驶、无人机编队等多智能体系统研究的专业人士。; 使用场景及目标:① 在大规模多机器人系统中快速生成无冲突路径,适用于自动化仓库调度等工业场景;② 作为教学与研究工具,深入理解MAPF中的优先级规划、Petri网建模、冲突消解机制及其数学本质;③ 支持算法复现与扩展,可用于对比不同启发式策略、同步算法与规划框架的性能差异。; 阅读建议:建议读者按照文中组织结构顺序阅读,重点关注各模块之间的接口设计与信息传递机制,结合提供的代码实例进行调试与运行,深入理解动态边权膨胀、Petri网容量约束转化、节点预留历史与几何惩罚驱动同步等关键技术的设计意图与实现细节。

欢多天天写代码

机械三维3D设计图-打铁扣自动机.zip

机械三维3D设计图-打铁扣自动机.zip

ZL4120505

机械三维3D设计图-光伏铝板自动打标码垛线step.zip

机械三维3D设计图-光伏铝板自动打标码垛线step.zip

ZL4120505

译页:一款支持大模型翻译的浏览器网页翻译插件

机器翻译及大模型翻译,需要到浏览器扩展中心开启开发者后加载未打包扩展程序

qq_34894365

日式式样书最新版本no.4模版免费模版

日式式样书最新版本no.4模版版免费模版

chenrlong
评论 17
收藏 已收藏
分享
返回顶部
samven
C# 111,129 成员 642,538 内容