内容 { //以下是动态创建数据表的方法 DataTable dt=new DataTable(); DataRow dr; //首先创建数据表结构 dt.Columns.Add(new DataColumn("type",System.Type.GetType("System.String")));//类型 dt.Columns.Add(new DataColumn("name",System.Type.GetType("System.String")));//名称 dt.Columns.Add(new DataColumn("action",System.Type.GetType("System.String")));//操作 dt.Columns.Add(new DataColumn("owner",System.Type.GetType("System.String")));//创建人 //为每一行填充数据 foreach(string d in Directory.GetFileSystemEntries(fullFolderPath)){ dr=dt.NewRow();//建新行 string[] parts=d.Split(new char[]{'\\'}); string txt=parts[parts.Length-1];//取最后一部分的字符串,它将可能是文件名或文件夹 dr[1]=txt;//名称name if(File.Exists(d))//如果是文件 { dr[0]="文件";//类型type int pos=currFullPath.IndexOf("NetHard"); string relaUrl=currFullPath.Substring(pos); string url="http://10.80.50.1/SharedSpace/"+relaUrl+"/"+txt;// 10.80.50.1为作者服务器地址,你应该将它修改为你所在服务器地址 dr[2]="<a href="+url+" target=_blank"+">下载</a>"; } else if(Directory.Exists(d)){//如果是文件夹 dr[0]="文件夹";//type类型 string password=GetFolderPassword(d);//取得文件夹密码信息 int type=GetFolderLimitType(d); if((password!="no")&&(type!=1)) dr[2]="<a href=PasswordValidate.aspx?path="+d+">密封</a>";//操作action else dr[2]="<a href=Default.aspx?path="+d+">进入</a>";//操作action dr[3]=GetFolderOwner(d);//取文件夹创建者名 } else Response.Write("<script>alert('无对象可绑定!')</script>"); dt.Rows.Add(dr);//添加行 return dt;//返回数据表 } }
这个方法取出指定文件夹下的内容分别处理:如果是文件,就显示"下载"链接指向服务器上文件的Url地址;对文件夹需要视保护与否及保护类型进一步区别处理:若"进入受限"则显示"密封"导入到密码验证页,"进入不受限"时修改查询字符串,显示"进入"链接指向初始显示页。
2、创建新文件夹及设置访问权限:
输入新文件夹名后,你就可以在当前路径下创建新的文件夹,Asp.net下远程创建新文件夹和在本地机操作完全一样,非常的简单,.Net的IO名字空间提供了专门的类库Direc 上一页 [1] [2] [3] [4] [5] 下一页 |