当前位置: 代码迷 >> ASP.NET >> datalist 绑定多个表有关问题
  详细解决方案

datalist 绑定多个表有关问题

热度:10111   发布时间:2013-02-25 00:00:00.0
datalist 绑定多个表问题
有两个表t1,t2 表结构有点不一样,但是都有我要的a,b两列,请问怎么把t1,t2的a,b两列同时绑定到一个datalist上。。在线坐等。最好说的详细点。。

------解决方案--------------------------------------------------------
用第三个表,将t1,t2的a、b两列复制进去,与datalist绑定
------解决方案--------------------------------------------------------
把两个表都取出来放在两个DataTable中

然后根据这两个DataTable组合成你需要绑定的第三个DataTable

DataTable的自定义参考如下:

DataTable sourse = new DataTable();
sourse.Columns.Add(new DataColumn("TypeID"));
sourse.Columns.Add(new DataColumn("TypeName"));
sourse.Columns.Add(new DataColumn("pic"));
string sqltype = "select distinct TypeID from Cartoon_Pic";
DataTable dttype = DataAccess.GetDataTable(sqltype);
for (int i = 0; i < dttype.Rows.Count; i++)
{
string typeid = dttype.Rows[i]["TypeID"].ToString();
string path = PubMethod.GetPath("72");
string sql = "select top 1 a.TypeID,b.TypeName,'" + path + "'+b.TypeName+'/'+a.Pic as pic from Cartoon_Pic as a,Cartoon_Type as b where a.TypeID='" + typeid + "' order by a.SerialNum asc";
DataTable dt = DataAccess.GetDataTable(sql);
if (dt.Rows.Count > 0)
{
DataRow dr = sourse.NewRow();
dr["TypeID"] = dt.Rows[0]["TypeID"].ToString();
dr["TypeName"] = dt.Rows[0]["TypeName"].ToString();
dr["pic"] = dt.Rows[0]["pic"].ToString();
sourse.Rows.Add(dr);
}
}
------解决方案--------------------------------------------------------
探讨

引用:
用第三个表,将t1,t2的a、b两列复制进去,与datalist绑定


行复制我会,列复制怎么复制?!

------解决方案--------------------------------------------------------
sql不会的,先fill,得到两个datatable,dt1、dt2,然后dt1.Merge(dt2),最后同dt1绑定。
  相关解决方案