在线等:请问VS2005中,sqldatareader怎样绑定gridview?好用马上加分! 要求使用代码完成. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 string settings = Convert.ToString(ConfigurationManager.ConnectionStrings["ConnectionString"]); SqlConnection myconn = new SqlConnection(settings); myconn.Open(); SqlCommand cmd = new SqlCommand("", myconn); cmd.CommandType = CommandType.StoredProcedure; SqlDataReader result =cmd.ExecuteReader(CommandBehavior.CloseConnection); gridView1.DataSource = result; gridView1.DataBind(); public class News_Info { #region 新闻属性 private int _nid; private string _ntitle; private string _ncontent; private DateTime _naddtime; private int _nread; private int _code; public int Code { get { return _code; } set { _code = value; } } public int Nid { get { return _nid; } set { _nid = value; } } public string Ntitle { get { return _ntitle; } set { _ntitle = value; } } public string Ncontent { get { return _ncontent; } set { _ncontent = value; } } public DateTime NaddTime { get { return _naddtime; } set { _naddtime = value; } } public int Nread { get { return _nread; } set { _nread = value; } } #endregion } public IList<News_Info> GetTopNews(int code) { IList<News_Info> IL = new List<News_Info>(); SqlDataReader sdr = SqlHelper.ExecuteReader("SELECT TOP 5 N_id,N_title,N_addTime,N_content FROM NEWS where Code="+code+" ORDER BY N_ID desc"); while (sdr.Read()) { News_Info ni = new News_Info(); SetDateToObject(ref ni, sdr); IL.Add(ni); } sdr.Close(); sdr.Dispose(); return IL; } protected void SetDateToObject(ref News_Info ni, SqlDataReader sdr) { try { ni.Nid = sdr.GetInt32(sdr.GetOrdinal("N_id")); } catch { } try { ni.Ntitle = sdr.GetString(sdr.GetOrdinal("N_title")); } catch { } try { ni.NaddTime = sdr.GetDateTime(sdr.GetOrdinal("N_addTime")); } catch { } try { ni.Ncontent = sdr.GetString(sdr.GetOrdinal("N_content")); } catch { } try { ni.Nread = sdr.GetInt32(sdr.GetOrdinal("Nread")); } catch { } }BLL.News userBLL=new BLL.News();绑定的时候 GridView.DataSource=userBLL.GetTopNews() GridView.DataBind()注意:前台中的DataTextField 对应的是实体中的属性名称 using (SqlConnection connection = new SqlConnection(@"server=ls\sql2005;database=northwind;user id=sa;pwd=sa")) { //SqlDataAdapter sda = new SqlDataAdapter("select * from customers", connection); //DataSet ds = new DataSet(); //sda.Fill(ds); connection.Open(); SqlCommand cmd = new SqlCommand("select * from customers", connection); SqlDataReader sdr = cmd.ExecuteReader(CommandBehavior.Default); while (sdr.Read()) { GridView1.DataSource = sdr; GridView1.DataBind(); } } SqlCommand cmd = new SqlCommand("", myconn); cmd.CommandType = CommandType.StoredProcedure; 这里可以选择是用sql语句 还是存储过程 如果是存储过程 同时有参数的化 还高给cmd添加参数 。。cmd.paramers.add(..) SqlDataReader sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection); //con.Close(); return sdr; 问个数据提交以后的问题 在asp.net中如何实现文章首页置顶 关于ASP.net中注释文档的生成问题 远程 解决问题后 即可得到2Q币 说话算数 "未将对象引用设置到对象的实例"? 常量中有换行符?字符文本中的字符太多? datalist下的超链的onclick事件的问题 再次向各位请教这个参数问题(花了我一周时间,还未搞好) 做个关于orm开源项方面的调查,看看你喜欢用哪个(nhibernate,nbear) 如何用button的on_click事件响应清空textbox中的内容 需要用到很多次的switch case,请教有什么高效的方法 关于用html生成table
SqlConnection myconn = new SqlConnection(settings);
myconn.Open();
SqlCommand cmd = new SqlCommand("", myconn);
cmd.CommandType = CommandType.StoredProcedure;
SqlDataReader result =cmd.ExecuteReader(CommandBehavior.CloseConnection);
gridView1.DataSource = result;
gridView1.DataBind();
public class News_Info
{
#region 新闻属性
private int _nid;
private string _ntitle;
private string _ncontent;
private DateTime _naddtime;
private int _nread;
private int _code;
public int Code
{
get { return _code; }
set { _code = value; }
}
public int Nid
{
get { return _nid; }
set { _nid = value; }
}
public string Ntitle
{
get { return _ntitle; }
set { _ntitle = value; }
}
public string Ncontent
{
get { return _ncontent; }
set { _ncontent = value; }
}
public DateTime NaddTime
{
get { return _naddtime; }
set { _naddtime = value; }
}
public int Nread
{
get { return _nread; }
set { _nread = value; }
}
#endregion
}
public IList<News_Info> GetTopNews(int code)
{
IList<News_Info> IL = new List<News_Info>();
SqlDataReader sdr = SqlHelper.ExecuteReader("SELECT TOP 5 N_id,N_title,N_addTime,N_content FROM NEWS where Code="+code+" ORDER BY N_ID desc");
while (sdr.Read())
{
News_Info ni = new News_Info();
SetDateToObject(ref ni, sdr);
IL.Add(ni);
}
sdr.Close();
sdr.Dispose();
return IL;
}
protected void SetDateToObject(ref News_Info ni, SqlDataReader sdr)
{
try { ni.Nid = sdr.GetInt32(sdr.GetOrdinal("N_id")); }
catch { }
try { ni.Ntitle = sdr.GetString(sdr.GetOrdinal("N_title")); }
catch { }
try { ni.NaddTime = sdr.GetDateTime(sdr.GetOrdinal("N_addTime")); }
catch { }
try { ni.Ncontent = sdr.GetString(sdr.GetOrdinal("N_content")); }
catch { }
try { ni.Nread = sdr.GetInt32(sdr.GetOrdinal("Nread")); }
catch { }
}BLL.News userBLL=new BLL.News();
绑定的时候 GridView.DataSource=userBLL.GetTopNews()
GridView.DataBind()注意:前台中的DataTextField 对应的是实体中的属性名称
{
//SqlDataAdapter sda = new SqlDataAdapter("select * from customers", connection);
//DataSet ds = new DataSet();
//sda.Fill(ds);
connection.Open();
SqlCommand cmd = new SqlCommand("select * from customers", connection);
SqlDataReader sdr = cmd.ExecuteReader(CommandBehavior.Default);
while (sdr.Read())
{
GridView1.DataSource = sdr;
GridView1.DataBind();
}
}
cmd.CommandType = CommandType.StoredProcedure;
这里可以选择是用sql语句 还是存储过程 如果是存储过程 同时有参数的化 还高给cmd添加参数 。。cmd.paramers.add(..)
//con.Close();
return sdr;