public partial class studnet_NewsDetails : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
newdatabinder();
}
}
private void newdatabinder()
//查看新闻内容函数方法
{
string str;
str = Request.QueryString["qid"].ToString();
OleDbConnection con = db.con();
con.Open();
OleDbCommand cmd = new OleDbCommand("select * from News where qid=@qid", con); cmd.Parameters.Add("@qid", SqlDbType.VarChar);
cmd.Parameters["@qid"].Value = str;
OleDbDataReader sdr = cmd.ExecuteReader();
if (sdr.Read())
{
this.label1.Text = "问题标题:" + sdr["Nname"].ToString() + "<br>" + "发表时间:" + sdr["Ntime"].ToString();
this.labelnewsdetail.Text = sdr["Ncount"].ToString();
}
}
}
总是显示数据库中第一条数据的值,
应该是参数传递的问题,不知道怎么改。
请高手指点,我是新手
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
newdatabinder();
}
}
private void newdatabinder()
//查看新闻内容函数方法
{
string str;
str = Request.QueryString["qid"].ToString();
OleDbConnection con = db.con();
con.Open();
OleDbCommand cmd = new OleDbCommand("select * from News where qid=@qid", con); cmd.Parameters.Add("@qid", SqlDbType.VarChar);
cmd.Parameters["@qid"].Value = str;
OleDbDataReader sdr = cmd.ExecuteReader();
if (sdr.Read())
{
this.label1.Text = "问题标题:" + sdr["Nname"].ToString() + "<br>" + "发表时间:" + sdr["Ntime"].ToString();
this.labelnewsdetail.Text = sdr["Ncount"].ToString();
}
}
}
总是显示数据库中第一条数据的值,
应该是参数传递的问题,不知道怎么改。
请高手指点,我是新手
str = Request.QueryString["qid"]==null?"":Request.QueryString["qid"].ToString();
using(OleDbConnection con = db.con())
{
con.Open();
OleDbCommand cmd = new OleDbCommand("select * from News where qid=@qid", con);
cmd.Parameters.Add("@qid", SqlDbType.VarChar);
cmd.Parameters["@qid"].Value = str;
OleDbDataReader sdr = cmd.ExecuteReader();
while(sdr.Read())
{
this.label1.Text = "问题标题:" + sdr["Nname"].ToString() + "<br>" + "发表时间:" + sdr["Ntime"].ToString();
this.labelnewsdetail.Text = sdr["Ncount"].ToString();
}
}
改成while(sdr.Read()) 就可以了~
应该修改为:OleDbCommand cmd = new OleDbCommand("select * from News where Nid=@qid", con);
因为这个是从网上下载的源程序,而数据库中表News中字段是Nid,