DataSet ds = ....; DataTable dtOld = ds.Tables[0];DataTable dtNew= new DataTable(); int i; for (i=0; i < dtOld.Rows.Count; i++) dtNew.Columns.Add("Column" + (i+1).ToString(), typeof(string));foreach(DataColumn dc in dtOld.Columns) { DataRow dr = dtNew.NewRow(); for (i=0; i < dtOld.Rows.Count; i++) { dr[i] = dtOld.Rows[i][dc].ToString(); } dtNew.Rows.Add(dr); }
in case you want to make 表的字段名做为新的一列DataSet ds = ....; DataTable dtOld = ds.Tables[0];DataTable dtNew= new DataTable();dtNew.Columns.Add("ColumnName", typeof(string));int i; for (i=0; i < dtOld.Rows.Count; i++) dtNew.Columns.Add("Column" + (i+1).ToString(), typeof(string));foreach(DataColumn dc in dtOld.Columns) { DataRow dr = dtNew.NewRow(); dr["ColumnName"] = dc.ColumnName;
for (i=0; i < dtOld.Rows.Count; i++) { dr[i] = dtOld.Rows[i][dc].ToString(); } dtNew.Rows.Add(dr); }
<Columns>
<asp:BoundColumn DataField="﹎" HeaderText="﹎" />
<asp:BoundColumn DataField="a" HeaderText="a"
ItemStyle-HorizontalAlign="right"/>
<asp:BoundColumn DataField="b" HeaderText="b"
ItemStyle-HorizontalAlign="right"/>
<asp:BoundColumn DataField="﹎" HeaderText="﹎"
ItemStyle-HorizontalAlign="right"/>
</Columns>
DataSet ds = ....;
DataTable dtOld = ds.Tables[0];DataTable dtNew= new DataTable();
int i;
for (i=0; i < dtOld.Rows.Count; i++)
dtNew.Columns.Add("Column" + (i+1).ToString(), typeof(string));foreach(DataColumn dc in dtOld.Columns)
{
DataRow dr = dtNew.NewRow();
for (i=0; i < dtOld.Rows.Count; i++)
{
dr[i] = dtOld.Rows[i][dc].ToString();
} dtNew.Rows.Add(dr);
}
为什么不用
datalist
他只有一列啊
你可以用两个datalist
然后个绑定一般的数据就OK了
DataTable dtOld = ds.Tables[0];DataTable dtNew= new DataTable();dtNew.Columns.Add("ColumnName", typeof(string));int i;
for (i=0; i < dtOld.Rows.Count; i++)
dtNew.Columns.Add("Column" + (i+1).ToString(), typeof(string));foreach(DataColumn dc in dtOld.Columns)
{
DataRow dr = dtNew.NewRow();
dr["ColumnName"] = dc.ColumnName;
for (i=0; i < dtOld.Rows.Count; i++)
{
dr[i] = dtOld.Rows[i][dc].ToString();
} dtNew.Rows.Add(dr);
}