Thực ra em có 1 datagrid thể hiện danh sách các tin (Title, NewsId,Catego)
public void loadgv(){
News news = new News();
DNews dn = new DNews(news);
gv_News.DataSource=dn.selectAll().Tables["News"];
gv_News.DataBind();
}
và ở gv có em để 1 event là selectindexchanging để khi click vào thì lấy ID truy xuất trực tiếp bản tin ra luôn.
protected void gv_News_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
{
News n = new News();
GridViewRow row = gv_News.Rows[e.NewSelectedIndex];
n.NewsId = int.Parse(row.Cells[0].Text);
DNews dn = new DNews(n);
DataSet ds=dn.selectById();
DataTable dt = ds..Tables["NewsDetails"];
}
----selectById():
public DataSet selectById()
{
base.Connect();
string sql = "SELECT n.NewsId,n.Titles,n.DateUp,t.TypeName,t.TypeId FROM News n INNER JOIN TypeNews t ON n.TypeId=t.TypeId WHERE n.NewsId=@NewsId";
SqlCommand cmd = new SqlCommand(sql, conn);
cmd.Parameters.Add(new SqlParameter("@NewsId", SqlDbType.Int, 4));
cmd.Parameters["@NewsId"].Value = this.n.TypeId;
DataSet ds = new DataSet();
SqlDataAdapter data = new SqlDataAdapter(cmd);
try
{
data.Fill(ds, "NewsDetails");
base.Disconnect();
return ds;
}
catch (Exception ex)
{
System.Console.Write(ex.Message);
base.Disconnect();
return null;
}
}