[英]Get specific column foreach row in DataTable
如何從DataTable的每一行中獲取特定的列。 在此示例中,我想獲取頭三則新聞,並且Image出現問題。 該代碼始終提供第一行的圖像,因為我定義了dr.Rows [0] [“ Image”]。 我如何更改此設置以獲得每行正確的圖像?
SqlCommand cmd = new SqlCommand("SELECT TOP 3 Title, Content, Date, Autor, Category, Image FROM News", con);
con.Open();
SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(dt);
foreach (DataRow row in dt.Rows)
{
Panel panel = new Panel();
panel.Attributes.Add("class", "post");
HtmlGenericControl header = new HtmlGenericControl("h2");
header.InnerHtml = row["Title"].ToString();
header.Attributes.Add("class", "naslovPosta");
panel.Controls.Add(header);
HtmlGenericControl date = new HtmlGenericControl("p");
date.InnerHtml = ((DateTime)row["Date"]).ToString("dd.MM.yyyy.");
date.Attributes.Add("class", "datumPosta");
panel.Controls.Add(date);
Image img1 = new Image();
img1.ImageUrl = ResolveUrl("~/Images/" + dt.Rows[0]["Image"]);
panel.Controls.Add(img1);
HtmlGenericControl content = new HtmlGenericControl("pre");
content.InnerHtml = row["Content"].ToString();
panel.Controls.Add(content);
pnlNews.Controls.Add(panel);
}
你已經列舉的所有行,您會發現在當前行row
-variable,所以更換:
img1.ImageUrl = ResolveUrl("~/Images/" + dt.Rows[0]["Image"]);
同
img1.ImageUrl = ResolveUrl("~/Images/" + row["Image"]);
就像您在row["Title"].ToString();
已經做過一樣
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.