[已解决问题] dataset中的一个datatable的输出问题
提问时间: 2008-01-28 15:07
悬赏分:100 浏览:531 次

datset里一张datatable表,如何使输出为
sony:   k500   k700   ...
nokia:  2650   3100   ...

表结构为:
mid   typeid   phone_type   id   name
223     3           k500    3       sony
224     3           k700    3       sony
......
235     5           2650     5       nokia
236     5           3100     5       nokia
......

 

as.net  的

提问者:flypiging - 初学一级
最佳答案
新建一个页面拷入以下前台代码: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Photo.aspx.cs" Inherits="samples_Photo" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>Created by 沙加, darkangle.cnblogs.com</title> </head> <body> <form id="form1" runat="server"> <div> <asp:GridView ID="gv1" runat="server" /> <hr /> <h1>Output : </h1> <asp:Literal ID="ltOutput" runat="server" /> </div> </form> </body> </html> 后台: using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; public partial class samples_Photo : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { DataTable dtPhoto = new DataTable(); dtPhoto.Columns.Add("mid"); dtPhoto.Columns.Add("phone_type"); dtPhoto.Columns.Add("name"); DataRow dr = dtPhoto.NewRow(); dr[0] = 223; dr[1] = "k500"; dr[2] = "sony"; dtPhoto.Rows.Add(dr); dr = dtPhoto.NewRow(); dr[0] = 224; dr[1] = "k700"; dr[2] = "sony"; dtPhoto.Rows.Add(dr); dr = dtPhoto.NewRow(); dr[0] = 235; dr[1] = "2650"; dr[2] = "nokia"; dtPhoto.Rows.Add(dr);
2008/1/28 17:04:43 回答者:沙加
其它回答(2)
sony: k500 k700 ... nokia: 2650 3100 ... 里面的...代表什么?
8个月前   回答者:Netprawn - 初学一级
这个我以前也遇到过,最后硬是把dataset中table的行搜了一遍,主要还是消除重复的行的问题,很不幸的是,我曾看到微软社区有个这样的例子。性能上大打折扣,这就不拿出来献丑了
8个月前   回答者:gaomartin - 小虾三级
评论
8个月前   flypiging :
当然是代表更多的型号呢...
8个月前   flypiging :
楼上的没写完吧....而且跟新建没什么关系吧
8个月前   沙加 :
dr = dtPhoto.NewRow();
dr[0] = 236;
dr[1] = "3100";
dr[2] = "nokia";
dtPhoto.Rows.Add(dr);

gv1.DataSource = dtPhoto;
gv1.DataBind();


string currentType = string.Empty;
System.Text.StringBuilder sb = new System.Text.StringBuilder();
for (int i = 0; i < dtPhoto.Rows.Count; i++)
{
DataRow drPhoto = dtPhoto.Rows[i];
if (!currentType.EndsWith(drPhoto[2].ToString(), StringComparison.InvariantCultureIgnoreCase))
{
sb.Append("<br />");
currentType = drPhoto[2].ToString();
sb.Append(currentType + " : ");
}
sb.Append(string.Format(" <a href=\"phonedetails.aspx?id={0}\">{1}</a> ", drPhoto[0], drPhoto[1]));
}
ltOutput.Text = sb.ToString();
}
}
//居然被截段了~~
8个月前   简单飞扬- :
前几天朋友面试时候遇到了一个类似的问题:
跟你这个类似的表结构 要求的结果也差不多 他那个问题一个查询语句就搞定了

只是 他那道题目 是用mysql数据库
   您需要登录以后才能回答!
 

我要提问

我的问题


快到期问题

> 问题排行榜

相关内容

相关链接