![e8ce5e81ef7f4765c45153da66227a31.png](https://i-blog.csdnimg.cn/blog_migrate/58b7e9ecb9089f0a59b770e2f954e2bd.png)
![3692a51e216af673e617038e53da6e80.png](https://i-blog.csdnimg.cn/blog_migrate/ac65269b9a56b0abffff193a13379708.png)
![474e254c0dedd5d96c93998b96f4b0ac.png](https://i-blog.csdnimg.cn/blog_migrate/ca3e257d5667e71b8606dc783fe23f94.png)
![474e254c0dedd5d96c93998b96f4b0ac.png](https://i-blog.csdnimg.cn/blog_migrate/ca3e257d5667e71b8606dc783fe23f94.png)
网络硬盘系统是计算机网络中比较流行的一种应用软件,但是一般的网络硬盘系统只适用于使用单一语种的人群。为满足不同语种人群对网络硬盘系统的需求,设计了多语种网络硬盘系统。采用ASP.NET 2.0开发语言,利用ASP.NET中的三层结构、B/S模式结构以及ASP.NET网页资源的设计思路,实现了包括文件夹的操作、文件的操作、网页的多语种化三个功能模块;通过文件夹功能模块,可以添加、删除、更改名字、移动、浏览文件夹;通过文件功能模块,可以查看文件属性、上传、下载、更改名字、移动文件;通过系统的多语种化模块,能够自动识别客户端的默认语言并反馈给客户端相应语言的网页。通过应用多语种网络硬盘系统,可以满足不同语种人群共享一个网络硬盘系统的需求,具有一定的应用价值。
![474e254c0dedd5d96c93998b96f4b0ac.png](https://i-blog.csdnimg.cn/blog_migrate/ca3e257d5667e71b8606dc783fe23f94.png)
3.1.1 对文件夹的操作
1. 浏览文件夹下的文件和文件夹
用户进入系统时,用一个页面显示系统根目录下的文件夹及文件。用户还可以根据需要在此页面上对文件夹进行一级一级的浏览。与浏览文件夹下的文件和文件夹功能块相对应的页面也是系统的主页,它记录访问系统的客户端信息,并把客户端信息存储在数据库中,供系统统计使用。
2. 新建文件夹
既然是网络硬盘系统,那么它就应该和本地硬盘一样用户可以新建一些比较有个性、方便查找和管理的文件夹名。用户通过新建文件夹功能块可以在系统上创建以用户所需要的名字命名的文件夹,方便用户管理文件,同时也方便查找文件。
3. 删除文件夹
当用户有需要删除一个或多个文件夹的时候,则需要一个对应的删除文件夹的功能块。用户可以单击页面中的【×】按钮可以删除选择的文件夹。为了防止用户误操作,当删除某一个文件夹时,需要弹出一个对话框来提醒用户,表示该文件夹是否真的可以被删除。如果操作成功,则显示提示消息;否则弹出失败对话框。
4. 重命名文件夹
一个文件夹不能够描述文件夹下的内容的时候,就需要对文件夹进行更名。当用户有需要变更文件夹名字的时候,单击页面中对应文件夹的【Edit】按钮进入重命名文件夹的页面。页面上的【确定】按钮触发事件以实现重命名文件夹的功能。
5. 移动文件夹
当文件夹放错了地方,或是文件夹不应该归在当前目录下时,就需要使用到移动文件夹的功能。单击移动文件夹的页面中的【移动到】按钮可以移动选择的文件夹。移动文件夹的步骤具体为以下三步:选择移动的文件夹;选择移动到的文件夹;单击【移动到】按钮移动文件夹。
3.1.2 对文件的操作
1. 上传文件
上传文件作为网络硬盘最重要、最基础的功能,用户可以通过上传页面上传一个或同时上传多个文件。上传的文件保存在服务器硬盘中,并把文件信息保存到数据库中。
2. 下载文件
同样,下载文件也是网络硬盘最为重要和基础的功能,用户使用此项功能可以从服务器上下载所需要的文件到本地硬盘上来。
3. 查看文件属性
用户在使用系统时,光看某一个文件的名字有的时候并不能判断出这个文件是否是他所需要的,所以在系统中添加了查看文件属性这个功能块。当用户点击文件名,并由文件的链接进入查看文件属性页面,在页面中显示了文件的名字、所在目录、类型、大小和创建时间。
4. 删除文件
当一个文件过时或则已经没有用处的时候,这个文件还留在服务器的硬盘上,这就占用了服务器的硬盘资源,所以就需要删除文件这项功能。它实现方式和删除文件夹功能一样都是在同一页面中完成的。
5. 移动文件
文件上传的时候传错了地方或是将文件归类到其他文件夹的时候,就需要把文件移动到相应的文件夹下。它的实现和移动文件夹功能一样同是单击浏览文件页面中的【移动到】按钮来完成的。
3.1.3 系统多语种化
系统所面对的用户不是使用单一语言的某一特定地区的人群,而是面对不同地区,使用不同语言的人群。这就要求系统具有多种语言来应对这种需求。
系统采用ASP.NET提供的使用网页资源本地化技术,来实现系统的多语种化。由于作者能力有限这里暂时先实现了三种语言,它们分别是:中文、日文和英文,其中中文为默认语言。
3.1 出错处理需求
要做到一个不出错的系统是非常难的,更何况系统是在短时间内完成的,系统出错是在所难免的。程序允许出错,但是要对错误进行相应的处理。这就需要一个专门的处理错误的页面。当系统发生异常时,系统会对异常进行捕获,然后把捕获的相关信息显示在错误处理页面。
3.2 开发环境的搭建
系统的用户可能使用的不同的平台来使用系统,系统是通过WEB形式运作,不同的平台都遵循WEB统一的协议。所以系统可以不用考虑用户使用的平台。在系统的开发过程中,采用的ASP.NET和C#.NET实现,这些都是微软的专属,所以开发的平台为WINDOWS。这里选用的操作系统为WINDOWS XP SP2。
Visual Studio 2005是微软最新的开发工具,也是世界上最优秀的开发软件之一,它以强大的WINDOWS为基础。Visual Studio 2005支持ASP.NET 2.0中的所有特性。它能让我们在开发过程中少写70%的代码。所以选择Visual Studio 2005作为开发工具。
由于在课堂上学习数据库中,SQL SERVER 2000最为熟悉,而且SQL SERVER 2000有着大量的用户,它的技术也是相当的成熟。所以在系统的开发中选用SQL SERVER 2000作为系统数据库。
4.1 系统设计思想
网络硬盘是目前比较流行的网络应用系统,它主要实现文件的共享与保存。
系统设计严格按照系统的需求分析来设计,以满足人们对多语种网络硬盘的需求。
4.2 系统业务概要描述及开发模型
系统运行在服务器上,用户使用终端上的浏览器(Browser)通过网络来访问系统。系统能够自动识别浏览器上设置的默认地区码,并返回相应语言的信息给浏览器。用户可以在系统上进行对目录的新建、删除、浏览、修改操作,对文件的上传、下载、搜索、修改,查看操作。
一般用户的操作流程是:
首先通过浏览器进入系统,用户会看到相应语言的首页。然后再是用户对文件和目录进行的一些操作。
整个系统及外部关系概要图见下:
![474e254c0dedd5d96c93998b96f4b0ac.png](https://i-blog.csdnimg.cn/blog_migrate/ca3e257d5667e71b8606dc783fe23f94.png)
浏览网络硬盘由ShowDisk.aspx.cs实现。页面初始化时,要实现下面三个功能:
(1) 获取参数DirID和ParentID的值
(2) 显示DirList控件的目录信息。
(3) 显示当前目录下的硬盘信息。如果参数DirID大于-1,则显示DirID目录下的信息;如果ParentID大于-1,则显示ParentID目录下的信息;否则显示跟目录下的信息。上述功能由函数Page_Load(object sender, EventArgs e)实现。
函数BindDirectoryData()显示控件DirList的目录信息,这些功能都是由函数ShowDirectory(DropDownList dirList,int nParentID)实现。函数BindDirectoryData()的程序代码如下:
private void BindDirectoryData()
{ ///显示目录列表信息
Disk disk = new Disk();
disk.ShowDirectory(DirList,-1);
if(DirList.Items.Count > 0)
{
DirList.SelectedIndex = 0;
}
disk.ShowDirectory(MoveDirList,-1); }
函数BindDirectoryData(int nParentID)首先根据参数nParentID从数据库中获取ID值为nParentID的目录和文件,然后使用DiskView控件显示文件夹和文件等信息,并设置【返回上级目录】按钮的可用性。函数BindDirectoryData(int nParentID)的程序代码如下:
private void BindDirectoryData(int nParentID)
{
///显示目录列表信息
IDisk disk = new Disk();
SqlDataReader dr = disk.GetDirectoryFile(nParentID);
///绑定控件的数据
DiskView.DataSource = dr;
DiskView.DataBind();
dr.Close();
ReturnBtn.Visible = nParentID > 0 ? true : false;
}
页面在显示目录、文件的标志时,使用函数FormatImageUrl(bool bFlag,string sType)获取图象的链接地址。该函数根据目录或者文件的类型获取不同图象的链接地址。
页面在显示目录、文件时,需要使用不同的链接地址。因此,页面使用函数格式化链接地址,由函数FormatHerf(int nDirID,int nParentID,bool bFlag)实现,该函数根据参数bFlag返回不同的链接地址。它的程序代码如下:
protected string FormatHerf(int nDirID,int nParentID,bool bFlag)
{ if(bFlag == true)
{
return ("ShowDisk.aspx?DirID=" + nDirID.ToString() + "&ParentID=" + nParentID.ToString());}
else
{
return ("ViewDisk.aspx?DirID=" + nDirID.ToString() + "&ParentID=" + nParentID.ToString());}
}
改变DirList控件的选择时,需要重新绑定DiskView控件的数据。该功能由DirList控件的事件DirList_SelectedIndexChanged(object sender,EventArgs e)实现。它的程序代码如下:
protected void DirList_SelectedIndexChanged(object sender,EventArgs e)
{ ///绑定控件的数据
BindDirectoryData(Int32.Parse(DirList.SelectedValue));}
![8558acc6f410a62a28f41cbbe90b199f.gif](https://i-blog.csdnimg.cn/blog_migrate/a0224437333c14b12f24feff49e55a58.gif)
详情请关注小编继续了解,免费赠送源代码与论文哦!
计算机毕业设计(源程序+论文+开题报告+文献综述+翻译+答辩稿)
联系QQ:2932963541进行咨询
![0c0c7d0364796de4fa152e1c98f04290.png](https://i-blog.csdnimg.cn/blog_migrate/a5601e79453e21df832aa68003aaf293.png)
![f36fc26ebd7a7c95022c818af062da9c.png](https://i-blog.csdnimg.cn/blog_migrate/4ef613418e903e16537f83474dac450a.jpeg)