Dear friend
 here my code for listing aspx files from single directory.
how can i list aspx files from multiple directory


  <form id="form1" runat="server">
    <div>
        <asp:GridView ID="GridView1" runat="server">
            <Columns>
                <asp:HyperLinkField DataNavigateUrlFields="Filename"
DataNavigateUrlFormatString="edit.aspx?file={0}" HeaderText="Edit"
Text="Edit" InsertVisible="False" />
                <asp:HyperLinkField DataNavigateUrlFields="Filename"
HeaderText="View" Target="_blank"
                    Text="View" />
            </Columns>
        </asp:GridView>
        &nbsp;</div>
    </form>
protected void Page_Load(object sender, EventArgs e)
    {
        //Retrieve the root directory from web.config file
        string MyDir =
ConfigurationSettings.AppSettings["RootDirectory"].Trim();


        DirectoryInfo dirInfo = new DirectoryInfo(MyDir);
        FileInfo[] info = dirInfo.GetFiles();
        DirectoryInfo[] dirs = dirInfo.GetDirectories();


        DataTable dt = new DataTable();
        dt.Columns.Add("Filename", typeof(string));
        dt.Columns.Add("Size (kb)", typeof(int));
        //dt.Columns.Add("Type", typeof(string));
        dt.Columns.Add("Modified", typeof(string));


        DataRow dr;
        foreach (DirectoryInfo dir in dirs)
        {
            dr = dt.NewRow();
            dr["Filename"] = dir.Name;
            dr["Size (kb)"] = "0";
            //dr["Type"] = "Directory";
            //dt.Rows.Add(dr);
        }
        foreach (FileInfo file in info)
        {
            if (file.Name.EndsWith(".htm") ||
file.Name.EndsWith(".html") || file.Name.EndsWith(".txt"))
            {
                dr = dt.NewRow();
                dr["Filename"] = file.Name;
                dr["Size (kb)"] = (int)file.Length / 1024;
                //dr["Type"] = "File";
                dr["Modified"] =
DateTime.Parse(file.LastWriteTime.ToString()).ToString("MM/dd/yyyy
h:mm tt");
                dt.Rows.Add(dr);
            }
        }

        GridView1.DataSource = dt;
        GridView1.DataBind();



    }

Reply via email to