欢迎光临极品网,更多、更新的资源信息尽在Jpinw.Com!本站所有信息资源每日更新新的内容,请大家继续关注www.Jpinw.com!如果觉得本站还不错,对您有帮助,别忘了向您的朋友推荐本站!请记好本站网址:http://www.Jpinw.com,网站发展靠大家多多的支持!!!

极品网 极品课件 极品论文 极品文学 极品游戏 极品美容 极品手机资源 极品股票

#
免费资源: 免费域名 | 免费空间 | 免费推广 | 免费邮箱 | 免费硬盘 | 免费论坛 | 免费留言 | 免费统计 | 在线投稿 | 更多...
电脑学院: 操作系统 | 安全相关 | 网页设计 | 编程开发 | 建站经验 | 服务器类 | 黑客攻防 | 菜鸟入门 | 教你网赚 | 更多...
文章导航: 网赚学堂 | 网赚秘笈 | 网赚三维 | 网赚先锋 | 网赚资讯 | 感悟网赚 | 众生百态 | 经典美文 | 范文中心 | 更多...
图酷天下: 时事图酷 | 娱乐图酷 | 搞笑图酷 | 时尚图酷 | 体育图酷 | 另类经典 | 论文资源 | 课件下载 | 文学知识 | 更多...

您现在的位置: 极品网 >> 电脑学院 >> 编程开发 >> 编程综合 >> 教程正文

ASP.NET虚拟主机的重大安全隐患(四)            【字体:
ASP.NET虚拟主机的重大安全隐患(四)
作者:佚名    教程来源:不详    点击数:    更新时间:2008-1-1    

 








ASP.NET虚拟主机的重大安全隐患(四)。
  程序二:显示目录中所有子目录和文件的程序listdir.aspx

目录下有子目录和文件两种形式,必须分别对待。我们调用此程序本身对子目录进行列表显示,而文件我们需要调用showfile.aspx程序对文件的属性和内容进行显示。并且两者还有不同的删除方法,所以我们在这里设置了两个DataGrid,两个DataTable,两个DataView,分别处理和显示目录和文件。

显示和处理目录和文件的DataGrid的代码(代码在listdir.aspx文件):

显示目录或文件的序号和名称的数据列类似于listdrivers.aspx程序中的相应代码,这里就不再重复了。对于子目录和文件分别有各自的处理页面,所以需要导航到两个不同的页面,对于子目录,我们继续使用listdir.aspx程序对其下的子目录和文件进行列表显示:

<asp:HyperLinkColumn DataNavigateUrlField="DirName"
DataNavigateUrlFormatString="listdir.aspx?dir="
DataTextField="DirDetail"
HeaderText="详细信息"
Target="_new"
/>
对于文件,我们使用showfile.aspx程序显示其属性和内容:
<asp:HyperLinkColumn DataNavigateUrlField="FileName"
DataNavigateUrlFormatString="showfile.aspx?file="
DataTextField="FileDetail"
HeaderText="详细信息"
Target="_new"
/>

在两个DataGrid(DirGrid,FileGrid)中我们分别设置了两个HyperLinkColumn列来导航到不同的处理页面。

在两个DataGrid中我们都使用了一个删除的按钮列:

<asp:ButtonColumn HeaderText="删除"
Text="删除"
CommandName="Delete"
/>

由于添加、更新、删除功能列都是DataGrid的默认模板列,所以可以在Vs.net中通过DataGrid的属性生成器自动添加此列。

获取上一页面所传递来的参数的代码:

因为在下面产生数据源的方法中需要使用由上一个页面传递过来的参数来确定目录和文件的名称,所以在页面的Page_Load方法里使用了下列代码:

strDir2List = Request.QueryString["dir"];

字符串strDir2List即传过来的目录名或文件名。

因为我们使用了两个DateGrid,就需要进行两次数据绑定,就有两个不同的生成数据源的方法。

生成目录数据网格(DirGrid)数据源的方法:

//通过此方法返回一个集合形式的数据视图DataView,用来初始化子目录的DataGrid
ICollection CreateDataSourceDir() {
dtDir = new DataTable();
DataRow dr;
//向DataTable中添加新的数据列,共四列
dtDir.Columns.Add(new DataColumn("DirID", typeof(Int32)));
dtDir.Columns.Add(new DataColumn("DirName", typeof(string)));
dtDir.Columns.Add(new DataColumn("DelDir", typeof(string)));
dtDir.Columns.Add(new DataColumn("DirDetail", typeof(string)));
//根据传入的参数(目录名)得到此目录下所有子目录名的字符串数组
string [] DirEntries = Directory.GetDirectories(strDir2List);
//使用foreach循环可以对未知长度的数组进行遍历循环
foreach(string DirName in DirEntries){
dr = dtDir.NewRow();
dr[0] = i;//序号
dr[1] = DirName;//文件夹名称
dr[3] = "删除";
dr[3] = "查看详情";
dtDir.Rows.Add(dr);
i++;
}
DataView dvDir = new DataView(dtDir);
//返回得到的数据视图
return dvDir;
}
生成文件数据网格(FileGrid)数据源的方法:
//通过此方法返回一个集合形式的数据视图DataView,用来初始化文件的DataGrid
ICollection CreateDataSourceFile() {
dtFile = new DataTable();
DataRow dr;
dtFile.Columns.Add(new DataColumn("FileID", typeof(Int32)));
dtFile.Columns.Add(new DataColumn("FileName", typeof(string)));
dtFile.Columns.Add(new DataColumn("DelFile", typeof(string)));
dtFile.Columns.Add(new DataColumn("FileDetail", typeof(string)));
//根据传入的参数(目录名)得到此目录下所有文件名的字符串数组
string [] FileEntries = Directory.GetFiles(strDir2List);
foreach(string FileName in FileEntries){
dr = dtFile.NewRow();
dr[0] = i;
dr[1] = FileName;
dr[2] = "删除";
dr[3] = "查看详情";
dtFile.Rows.Add(dr);
i++;
}
dvFile = new DataView(dtFile);
return dvFile;
}

我们编程实现了两个DataSource只需在页面的Page_Load方法里对两个DataGrid进行数据绑定即可将得到的DataTable中的数据显示在aspx页面的DataGrid上。

数据绑定代码:

//对子目录数据列表DirGrid进行数据源定义和数据绑定
DirGrid.DataSource = CreateDataSourceDir();
DirGrid.DataBind();
//对文件数据列表FileGrid进行数据源定义和数据绑定
FileGrid.DataSource = CreateDataSourceFile();
FileGrid.DataBind();

通过我们上边介绍的主要方法,我们实现了对某个逻辑驱动器或目录中的所有子目录和文件进行了列表显示,并且可以根据显示结果更进一步的浏览子目录或者查看文件的属性和内容提要。浏览子目录仍然是通过listdir.aspx这个程序,没有任何子目录级别要求,没有目录深度限制。

 

教程录入:admin    责任编辑:admin 
  • 上一篇教程:

  • 下一篇教程:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    最新热点 最新推荐 相关教程
    [我的ASP.net学习历程]有关于
    《Asp.Net Forums2.0深入分析
    ASP.NET 2.0页面性能的考虑
    ASP.NET 2.0打造购物车和支付
    关于ASP.Net中的时间处理
    基于asp.net的web页面动态控
    ASP.NET ViewState 初探 (3)
    ASP.NET/Perl.NET 数据库访问
    ASP.NET: Connection String
    ASP.NET: HtmlEncode/UrlEnc
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    极品网
    | 设为首页 | 加入收藏 | 友情链接 | 版权声明 |
    极品网

    Copyright 2006 Jpinw.com 极品网

    备案号:浙ICP备07010375号

    极品网