我已经获得了一个带有"冠军联赛"的数据库文件。组。有信息的表格如下所示:" Team:Real Madrid,group:A;球队:曼彻斯特UTD,小组:A;球队:Chelsea London,Group:A;球队:阿森纳伦敦,小组:A;球队:Fc巴塞罗那队,B组;球队:曼城队,B组;球队:马德里竞技队,小组:B;球队:尤文图斯,小组:B;"此时,为了从数据库I接收值,我正在使用8个中继器(每个组中的每个中继器)来渲染组的html表,以及后面的代码:
OleDbConnection con = new OleDbConnection();
con.ConnectionString = "provider=microsoft.jet.oledb.4.0; data source=D:/VisualWebSitesProject/EURO-PILKA/bazyDanych/ligi.mdb";
con.Open();
DataSet ds = new DataSet();
OleDbDataAdapter da = new OleDbDataAdapter();
da = new OleDbDataAdapter("Select * From ChampionsLeague WHERE Group LIKE A ORDER By Points DESC", con);
da.Fill(ds);
groupA.DataSource = ds;
groupA.DataBind();
con.Close();
con.Open()
DataSet ds2 = new DataSet();
OleDbDataAdapter da2 = new OleDbDataAdapter();
da2 = new OleDbDataAdapter("Select * From ChampionsLeague WHERE Group LIKE B ORDER By Points DESC", con);
da2.Fill(ds2);
groupB.DataSource = ds2;
groupB.DataBind();
con.Close();
和其他组相同。 Everythink工作正常,但我想知道:这是一个更好的方法吗?没有使用那么多转发器或数据集?我担心这一点,因为我也希望创造一个#34;世界杯"团体(8个中继者)和"欧洲联盟"组(12个中继器),我认为页面加载速度很慢..
中继器构造:
<asp:Repeater ID="groupA" runat="server">
<HeaderTemplate>
<div class="wygladNaglowekTabele wygladNaglowekTabeleOnload">GROUP A</div>
<table id="liga" class="wygladTabelaLiga">
<tr>
<td class="szerokosc1 color3">Lp.</td><td class="szerokosc2 color3 wysrodkuj">DRUZYNA</td><td class="szerokosc1 color3">Lm</td><td class="szerokosc1 color3">B</td><td class="szerokosc1 color3">Pts</td>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td class="szerokosc1 color2"><%#Container.ItemIndex +1%></td><td class="szerokosc2 color2"><%#Eval("Team")%></td><td class="szerokosc1 color2"><%#Eval("LiczbaMeczy")%></td><td class="szerokosc1 color2"><%#Eval("LiczbaGoliStrzelonych")%></td><td class="szerokosc1 color2"><%#Eval("Points")%></td>
</tr>
</ItemTemplate>
<AlternatingItemTemplate>
<tr>
<td class="szerokosc1 color"><%#Container.ItemIndex +1%></td><td class="szerokosc2 color"><%#Eval("Team")%></td><td class="szerokosc1 color"><%#Eval("LiczbaMeczy")%></td><td class="szerokosc1 color"><%#Eval("LiczbaGoliStrzelonych")%></td><td class="szerokosc1 color"><%#Eval("Points")%></td>
</tr>
</AlternatingItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
感谢您的任何建议!而且我很抱歉我的英语..
答案 0 :(得分:0)
你可以在一个调用中获取所有组,并在一个StringBuilder中以编程方式创建最终的html标记,然后将stringBuilder字符串放到像asp:Literal这样的控件