SqlDataReader问题:要求打开且可用的连接。当前连接已关闭

[复制链接]
查看11 | 回复2 | 2008-12-4 08:58:31 | 显示全部楼层 |阅读模式
using System;
using System.Collections.Generic;
using System.Text;
using System.Data.SqlClient;
namespace zuoye1
{

class Class1

{

public static SqlConnection conn()

{
string connection = "Data Source=.;Initial Catalog=shangpin;user id=sa; pwd=7817110";

SqlConnection conn = new SqlConnection(connection);

return conn;



}

public static SqlCommand comm(string sql)

{

SqlCommand command = new SqlCommand(sql,conn());

return command;


}
publicstatic SqlDataReader dataReader(string sql)

{
conn().Open();

comm(sql).CommandText=sql;

SqlDataReader dataReader = comm(sql).ExecuteReader();
return dataReader;

}
}
}
---------------------------------------------------
SqlDataReader dataReader = comm(sql).ExecuteReader();//产生异常:要求打开且可用的连接。当前连接已关闭
哪里错了?
using System.Data.SqlClient;
namespace zuoye1
{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}



private void Form1_Load(object sender, EventArgs e)

{


try

{
string sql = "select distinct(类别) from shangpinxinxi";
while (Class1.dataReader(sql).Read())

{



string leixin = (string)Class1.dataReader(sql)["类别"];

cbo1.Items.Add(leixin);

}



}

catch (Exception ex)

{

MessageBox.Show(ex.Message);

}



}

}
}
----------------------------------
还有一个窗口,我是在这里面调用

回复

使用道具 举报

千问 | 2008-12-4 08:58:31 | 显示全部楼层
public static SqlDataReader dataReader(string sql){
conn().Open();
comm(sql).CommandText=sql;
SqlDataReader dataReader = comm(sql).ExecuteReader();
return dataReader;} } } =======================================================你这个程序有问题吧~~conn().Open();打开数据库连接与下面的数据库数据的查询没有任何关联啊,comm(sql)...
回复

使用道具 举报

千问 | 2008-12-4 08:58:31 | 显示全部楼层
你的程序的问题! public static SqlCommand comm(string sql,SqlConnection con) { SqlCommand command = new SqlCommand(sql,con); return command; } conn().Open(); comm(sql...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行