62,046
社区成员
发帖
与我相关
我的任务
分享
<tr>
<td rowspan="2">
2013001
</td>
<td>
成年人
</td>
<td>
1
</td>
<td>
1000
</td>
<td>
200
</td>
<td>
100
</td>
<td>
0
</td>
<td>
1300
</td>
<td rowspan="2">
<dl>
<dd>
减餐-50</dd>
<dd>
赔款-50</dd>
</dl>
</td>
<td rowspan="2">
2150
</td>
<td rowspan="2">
杨
</td>
</tr>
<tr>
<td>
小孩
</td>
<td>
1
</td>
<td>
800
</td>
<td>
100
</td>
<td>
50
</td>
<td>
0
</td>
<td>
950
</td>
</tr>
<tr>
<td>
2013002
</td>
<td>
成年人
</td>
<td>
1
</td>
<td>
2000
</td>
<td>
0
</td>
<td>
0
</td>
<td>
0
</td>
<td>
2000
</td>
<td>
加餐+50
</td>
<td>
2050
</td>
<td>
杨
</td>
</tr>
class Info
{
public string code { get; set; }
public string name { get; set; }
}
class Program
{
static void Main(string[] args)
{
List<Info> list = new List<Info>{
new Info{ code="2013001", name="测试一"},
new Info{ code="2013002", name="测试二"},
new Info{ code="2013003", name="测试三"},
new Info{ code="2013001", name="测试四"},
new Info{ code="2013001", name="测试五"},
new Info{ code="2013002", name="测试六"},
new Info{ code="2013001", name="测试七"}
};
Console.WriteLine(GetHtml(list));
Console.Read();
}
/// <summary>
/// 获取html
/// </summary>
/// <param name="list"></param>
/// <returns></returns>
private static string GetHtml(List<Info> list)
{
StringBuilder sb = new StringBuilder();
int index = 1;
//保存第一个code
string firstCode = list[0].code;
//获取与第一个code相同的记录
List<Info> sameList = list.FindAll(x => x.code == firstCode);
foreach (Info info in sameList)
{
sb.Append("<tr>");
if(index++==1)
{
//表示有相同的记录
if(sameList.Count>1)
{
sb.Append("<td colspan=\""+sameList.Count+"\">"+info.code+"</td>");
}else{
//表示就这么一条code的记录
sb.Append("<td>"+info.name+"</td>");
}
}
sb.Append("<td>"+info.name+"</td>");
sb.Append("</tr>\r\n");
}
//移除掉与第一个Code相同的记录
list.RemoveAll(x => x.code == firstCode);
if (list.Count > 0)
{
//递归取html
sb.Append(GetHtml(list));
}
return sb.ToString();
}
}
中午写的一个简单的递归 LZ可以参考下<tr>
<td rowspan="2">
<%# Eval("ID") %>
</td>
<td>
<%# (int)Eval("Type")==0 ? "成年人" : "小孩" %>
</td>
<td>
<%#Eval("...")%> </td>
<td>
<%#Eval("...")%>
> </td>
...
</tr>
public void test(){
}
<a href="#">dd</a>
<h1>
ddd