文章大类控制小类的asp.net代码,dataset过滤缓存...

    技术2022-05-11  68

    前台:

    <asp:DataList  ID="DataListType"  OnItemCommand="DataListType_ItemCommand"  SelectedItemStyle-BackColor="Yellow"  DataKeyField="typeid"  Runat="Server" Width="388px" RepeatColumns="6" RepeatDirection="Horizontal"><ItemTemplate>  <asp:LinkButton ID="LinkButton1"    Text='<%# Eval("typename") %>'    Runat="Server" /></ItemTemplate>        <SelectedItemStyle BackColor="Yellow" /></asp:DataList>        <asp:GridView ID="DataGridArticle" runat="server" AutoGenerateColumns="False" Width="623px" ShowHeader="False">            <Columns>                <asp:BoundField DataField="Title" />                <asp:BoundField DataField="UpdateTime" DataFormatString="{0:MM-dd}" />            </Columns>        </asp:GridView>

    后台:

    DataSet ds;    protected void Page_Load(object sender, EventArgs e)    {        OleDbDataAdapter dr;        ds = (DataSet)Cache["Store"];

            if (ds == null)        {            ds = new DataSet();            string strDBPath = System.Configuration.ConfigurationSettings.AppSettings["DBPath"];            string strConn = System.Configuration.ConfigurationSettings.AppSettings["Connection"] + Server.MapPath(strDBPath);            OleDbConnection myConnection = new OleDbConnection(strConn);

                dr = new OleDbDataAdapter("Select * From ArticleType", myConnection);            myConnection.Open();            dr.Fill(ds, "ArticleType");            dr.SelectCommand = new OleDbCommand("Select * from Article", myConnection);            dr.Fill(ds, "Article");            myConnection.Close();            //DataSet ds = (DataSet)Cache["Store"];        }        if (!IsPostBack)        {            DataListType.DataSource = ds;            DataListType.DataMember = "ArticleType";            DataListType.DataBind();        }          }    public void DataListType_ItemCommand(object s, DataListCommandEventArgs e)    {        DataView dv;        int ID;

            // Select the Chosen Category        DataListType.SelectedIndex = e.Item.ItemIndex;

            // get CategoryID from DataKeys Collection        ID = System.Convert.ToInt32(DataListType.DataKeys[e.Item.ItemIndex]);

            // Filter the Products        dv = ds.Tables["Article"].DefaultView;        dv.RowFilter = "typeid=" + ID;        DataGridArticle.DataSource = dv;        DataGridArticle.DataBind();    } 


    最新回复(0)