后台:
DataSet ds = new DataSet();
DataView dv;
protected void Page_Load(object sender, EventArgs e)
{
string strDBPath = System.Configuration.ConfigurationSettings.AppSettings["DBPath"];
string strConn = System.Configuration.ConfigurationSettings.AppSettings["Connection"] + Server.MapPath(strDBPath);
OleDbConnection myConnection = new OleDbConnection(strConn);
OleDbDataAdapter dr;
dr = new OleDbDataAdapter("Select * From ArticleType order by typeid asc", myConnection);
dr.Fill(ds, "ArticleType");
dr.SelectCommand = new OleDbCommand("Select NewsID,Title,typeid,UpdateTime From Article", myConnection);
dr.Fill(ds, "Article");
dv = ds.Tables["Article"].DefaultView;
ArticleTypeName.DataSource = ds;
ArticleTypeName.DataMember = "ArticleType";
ArticleTypeName.DataBind();
}
public DataView FilterArticle(int intCatID)
{
dv.RowFilter = "typeid=" + intCatID;
return dv;
}
前台:
<asp:Repeater ID="ArticleTypeName" Runat="Server">
<ItemTemplate>
<h2><%#Eval("typename")%></h2>
<asp:DataGrid ID="ArticleTitle" DataSource='<%#FilterArticle(1) %>' Runat="Server" AutoGenerateColumns="false">
<Columns>
<asp:TemplateColumn>
<ItemTemplate>
<table cellspacing="0" cellpadding="0" width="100%" border="1" bordercolordark="#CCCCCC" bordercolorlight="#FFFFFF">
<tr>
<td height="25" valign="middle"><a href='ArticleDetail.aspx?NewsID=<%# Eval("NewsID") %>'><%# Eval("Title") %></a><font color="#777777">(<%# Eval("UpdateTime","{0:yyyy-MM-dd}") %>)</font></td>
</tr>
</table>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:DataGrid>
</ItemTemplate>
</asp:Repeater>