【发布时间】:2013-08-23 00:01:30
【问题描述】:
我不想在它被循环之前绑定它。我这里有一个上传到 gridview 的 csv 文件。我想在绑定之前遍历它。任何建议都很棒。
protected void btnUpload_Click(object sender, EventArgs e)
{
if (FileUpload1.HasFile)
try
{
FileUpload1.SaveAs(Server.MapPath("") +
FileUpload1.FileName);
Label1.Text = "File name: " +
FileUpload1.PostedFile.FileName + "<br>" +
FileUpload1.PostedFile.ContentLength + " kb<br>" +
"Content type: " +
FileUpload1.PostedFile.ContentType + "<br><b>Uploaded Successfully";
}
catch (Exception ex)
{
Label1.Text = "ERROR: " + ex.Message.ToString();
}
else
{
Label1.Text = "You have not specified a file.";
}
CSVReader reader = new CSVReader(FileUpload1.PostedFile.InputStream);
string[] headers = reader.GetCSVLine();
DataTable dt = new DataTable();
foreach (string strHeader in headers)
dt.Columns.Add(strHeader);
string[] data;
while ((data = reader.GetCSVLine()) != null)
dt.Rows.Add(data);
csvReaderGv.DataSource = dt;
csvReaderGv.DataBind();
}
}
【问题讨论】:
-
是什么阻止你做
foreach(DataRow row in dt.Rows)...? -
我把它放在 csvReaderGv.DataSource = dt; csvReaderGv.DataBind();或之后。它让我感到困惑。
-
是的,因为您的要求是:“我想在绑定之前循环遍历它”。这个问题有点奇怪吧?
-
不觉得这个问题很奇怪。抱歉,我真的想尽可能清楚。
标签: c# asp.net data-binding datagridview datasource