DB-Acess.csSQL数据读取器到标签 - 值不显示
这就是公共SqlDataReader的getEmail被初始化。
public SqlDataReader getEmail(string UserName)
{
if (conn.State.ToString() == "Closed")
{
conn.Open();
}
//string noemail ="noemailsaved";
SqlCommand newCmd = conn.CreateCommand();
newCmd.Connection = conn;
newCmd.CommandType = CommandType.Text;
newCmd.CommandText = "Select Email from dbo.EMPLOYEE where Username ='" + UserName + "'";
SqlDataReader reader = newCmd.ExecuteReader();
while (reader.Read())
{
string email = reader["EMPLOYEE.Email"].ToString();
}
conn.Close();
reader.Close();
return reader;
}
我使用OOP,并呼吁在asp.net页面中的功能和希望显示在标签值。下面是我用来调用函数的代码。
SqlDataReader reader = dba.getEmail(pname);
lblEmail.Text = reader.ToString();
lblEmail.DataBind();
也看不到员工的电子邮件地址我看到System.Data.SqlClient.SqlDataReader
纠正这个错误,请帮忙。
预先感谢您。
谢谢你的回答。我提示一个错误“已经有一个打开的DataReader与这个Command关联,必须先关闭它。”任何想法是什么导致这一点 – Omesh
尝试配置SqlCommand&reader:'if(newCmd!= null){newCmd.Dispose();} if(reader!= null){reader。''或者你可以使用'using'语句 – jonju
试试更新后的代码 – jonju