资源描述
本科毕业设计(论文)
摘要
企业信息文档管理系统提供了全面的知识管理框架,允许企业在任何地点和时间发布、存储、和创建文档并共享信息,所有的文档都可以经由Web浏览器找到并获得,同时将不同等级的文档供不同权限的人员使用。企业信息文档管理系统有助于企业内部和外部的交流对现代化的公司或企业来说非常重要。
本系统使用C#语言在Visual Studio.NET 2005集成开发环境下,配合SQL Server数据库管理系统完成设计与实现,利用面向对象的LINQ 查询数据库方式,实现所有操作问。本系统设计并实现了文档信息层次管理模块、文档信息管理模块、文件附件和图片管理模块、用户和角色管理模块、用户登录和注册模块共6个功能模块的设计,其中文档附件和图片层次管理是设计的重点,是实现系统最主要功能的模块。
关键词:企业信息文档管理系统,C#,Visual Studio.NET,SQL Server,数据库
I
ABSTRACT
Enterprise Information document management system provides a comprehensive knowledge management framework that allows businesses of any location and time of release, storage, and create documents and share information, all documents are available through the Web stray device to find and access, while different levels of documentation for use by different permissions. Enterprise Information Document Management System will help internal and external communication.
The system uses the C # language in Visual Studio.NET integrated development environment with the SQL Server database management system to complete the design and implementation of the LINQ query using object-oriented database approach, the realization of all operations asked. The system was designed and implemented a document management module level information, document management module thin, file attachments and pictures management module, user and role management module, user login and registration module of six function modules, including document-level information management module the design focus is to achieve the main function of the module system
Keywords: Enterprise Information Document Management System, C#, Visual Studio.NET, SQL Server, Database.
II
目录
摘要 I
ABSTRACT II
第1章 引言 1
1.1 背景 1
1.2 研究内容 2
第2章开发环境介绍 3
2.1 .NET的三层架构 3
2.1.1 三层架构的构成 3
2.1.2 三层架构的特点分析 3
2.2 使用ADO.NET开发数据库应用 4
2.2.1 ADO.NET概述 4
2.2.2 VISUAL STUDIO.NET 2005 4
2.2.3.NET FRAMEWORK 5
2.2.4 SQL SERVER 2005 5
2.3 ASP.NET简介 5
第3章 系统分析 7
3.1 系统功能需求分析 7
3.2 系统模块划分 11
3.3系统性能需求分析 13
第4章 数据库设计 14
4.1 数据库结构分析与创建 14
4.2 概念结构设计 14
4.3 逻辑结构设计 15
4.4 数据库安全性和完整性 18
4.4.1 数据库的安全性 18
4.4.2 数据完整性 19
第5章 系统详细与实现 20
5.1系统主页面设计 20
5.1.1 系统主界面功能模块设计 20
5.1.2 功能模块树的设计 21
5.1.3 系统主页面 21
5.2用户登录和注册 22
5.2.1 用户登录 22
5.2.2 用户注册 25
5.3文档信息层次管理 26
5.3.1 层次管理界面设计 26
5.3.2 添加新的层次的功能实现 28
5.3.3 删除层次的功能实现 29
5.3.4 修改层次的功能实现 29
5.3.5 排序层次的功能实现 30
5.4文档管理 31
5.4.1 添加文档 31
5.4.2 浏览文档 33
5.5附件和图片管理 36
5.5.1 界面设计 36
5.5.2 显示附件和图片 37
5.5.3上载附件和图片 38
5.5.4删除附件和图片 40
5.6软件测试 41
第6章 结论 44
致谢 45
参考文献 46
Ⅳ
第1章 引言
1.1 背景
信息化时代,电子文件资源已成为企业资源的重要组成部分,并在传统的企业文件与档案管理中凸现出不可替代的优势。系统用户对信息共享的要求遍及企业经营、生产、建设、管理各个领域,他们对电子文件资源的利用需求非常广泛,这就要求企业档案管理部门首先要创新服务理念,打破传统单一纸质文件档案服务的观念,将文档信息工作的重心转移到开发和管理电子文件资源上来,树立起文档信息服务的意识和理念,在做好文档信息化建设工作的基础上,全方位策划并提供信息服务,使文档信息的存在价值通过服务和创新更好地体现出来。
但是,目前许多机关、企事业单位的文书档案管理仍停留在给予纸介质的手工处理阶段,手工处理文书档案有许多缺点,如档案堆积多、重复劳动的工作多、分类管理困难、查询困难、利用率低等等,这些缺点在文件流量大的时候体现的越明显。同时,纸介质的保存受到很多自然因素的影响(湿度、温度、虫咬),导致保存期受限。
因此,为做好信息服务工作,有必要对传统的工作流程及资源进行重新梳理及调整,搭建一个信息服务的优质平台。信息化时代,电子文件资源已成为企业资源的重要组成部分,并在传统的企业文件与档案管理中凸现出不可替代的优势。系统用户对信息共享的要求遍及企业经营、生产、建设、管理各个领域,他们对电子文件资源的利用需求非常广泛,这就要求企业档案管理部门首先要创新服务理念,打破传统单一纸质文件档案服务的观念,将文档信息工作的重心转移到开发和管理电子文件资源上来,树立起文档信息服务的意识和理念,在做好文档信息化建设工作的基础上,全方位策划并提供信息服务,使文档信息的存在价值通过服务和创新更好地体现出来。
但是,目前许多机关、企事业单位的文书档案管理仍停留在给予纸介质的手工处理阶段,手工处理文书档案有许多缺点,如档案堆积多、重复劳动的工作多、分类管理困难、查询困难、利用率低等,这些缺点在文件流量大的时候体现的越明显。同时,纸介质的保存受到很多自然因素的影响(湿度、温度、虫咬),导致保存期受限。
因此,为做好信息服务工作,有必要对传统的工作流程及资源进行重新梳理及调整,搭建一个信息服务的优质平台。本系统提供了全面的知识管理框架,允许企业在任何地点和时间发布、存储、和创建文档并共享信息,所有的文档都可以经由Web浏览器找到并获得,同时将不同等级的文档供不同权限的人员使用。企业信息文档管理系统有助于企业内部和外部的交流对现代化的公司或企业来说非常重要
1.2 研究内容
本系统使用C#语言在Visual Studio 2005 和 SQL Server 2005环境下完成。
在做需求分析之前,先研究了基于.NET的软件开发方式;在需求分析中对系统的功能和性能进行了全面的分析;
数据库的设计在需求分析的基础上,严格按照用户的需求设计。设计了、功能模块表、角色表、用户表、文档层次表、文档表、文档附件表。
在详细设计和系统实现的过程中,重点设计和实现了登录和注册模块、用户和角色管理模块、文档信息层次管理功能模块、文档信息管理模块以及文档附件、图片管理的功能模块。在完成系统的设计和实现之后,对系统进行了测试,基本达到了用户对专利管理信息系统的要求。
第2章开发环境介绍
本系统采用三层架构模式进行开发,设计与实现基本上都是在Visual Studio.NET中完成的,利用ADO.NET组件访问和操作数据库,选用SQL Server 2005作为本系统的数据库管理系统。本章介绍了开发本系统过程中使用到的技术、开发方式、开发环境等等。
2.1 .NET的三层架构
2.1.1 三层架构的构成
通常所说的三层架构包含表示层、业务层、数据层。表示层主要是指与用户交互的界面,它接收用户的输入,但并不包括任何实际的业务处理,知识简单地将数据转交给业务层,同时负责显示业务层传递过来的数据[5],本系统中使用的Windows窗体就是表示层提供的用户界面。业务层访问并处理数据层的数据,并向表示层提交数据,实现业务逻辑。数据层负责访问数据库,并将存储在数据库中的数据提交给业务层,本系统中该层涉及的是ADO.NET技术。三层架构的结构图如图2-1所示:
表示层
业务层
数据层
数据库
图2-1 三层架构示意图
2.1.2 三层架构的特点分析
三层架构的优点:
(1) 开发人员可以只关注整个结构中的其中某一层
(2) 解决方案的维护和增强变得更容易
(3) 利于各层逻辑的复用
2.2 使用ADO.NET开发数据库应用
2.2.1 ADO.NET概述
ADO.NET提供对Microsoft SQL server、ODBC、Oracle 等数据源,以及通过OLEDB 和XML公开的数据源的一致访问。应用程序可以使用ADO.NET来连接到这些数据源,并检索、操作和更新其中的数据。ADO.NET由以下两大组建组成:
1.NET Framework数据提供程序组件中包含用于连接到数据库、执行命令和检索结果的类,可以直接处理检索到的结果,或将其放入ADO.NET 数据集对象中。. .NET Framework数据提供程序组件中包含四个对象:
(1) Connection对象:提供了与数据库的连接。
(2) Commond对象:能够执行用于返回数据、修改数据、运行存储过程以及发送或检索参数信息的数据库命令。
(3) DataReader对象:用于从数据库中返回高性能的数据流。
(4) DataAdapter对象:提供连接DataSet对象的数据库的桥梁。DataAdapter使用Command对象在数据库中查询数据,并将数据加载到DataSet中,对DataSet中的数据的更改也由其同步到数据库中,使数据库与数据集数据保持一致
2.DataSet(数据集)为非连接对象,与其相关的对象有DataTable、DataColumn、Constraint等对象。DataSet提供断开式的数据访问和操作,它可以被看作是数据源的数据在内存中的副本。通过DataSet对象,可以检索或更新这些数据,同时保持该副本和数据源一致。
2.2.2 Visual Studio.NET 2005
Visual Studio.NET是一个IDE。IDE,是英文单词Integrated Development Environment的缩写,就是集成开发环境的意思,是指把代码的编写、程序的调试、编译、运行以及其他的相关操作都集成在一起的编程工具。本系统使用的版本是Visual Studio.NET 2005 ,它是一套完整的开发工具,可以用于创建高性能的桌面应用程序、XML Web服务、移动应用程序和ASP Web应用程序。
Visual Studio.NET IDE以.NET Framework为基础,整合了VB.NET、VC++.NET、VC#.NET、VJ#.NET等开发环境,提供及其强大的开发能力,打开一个Visual Studio.NET IDE工具即可进行上面四种语言的开发,而且不同语言的开发环境和开发技巧基本相同。
本系统的设计与实现基本上都是在Visual Studio.NET中完成的。
2.2.3.NET Framework
.NET Framework中文名叫.NET 框架,它包括:编程语言、公共语言规范、.NET开发组件、框架类库集(FCL)、公共语言运行时(CLR),如图2-3所示:
从图中可以看出,公共语言运行时运行在操作系统上,而.NET程序又在公共语言运行时的基础上运行。同时又可以看出,理论上任何语言都可以在.NET框架中开发程序,这些程序在编译时会经过公共语言规范处理,最终会转换为可以在公共语言运行时上运行的.NET程序。框架类库集中的类封装了文件操作、数据库操作、线程、XML解析等一系列高级应用,用于轻松地建立应用程序。这些内容中.NET开发组件是最重要的。本系统的界面大部分都是使用WinForm开发组件开发的,ADO.NET被用来访问和操作数据库。
2.2.4 SQL Server 2005
SQL Server拥有很多优点,例如,图形化用户界面,使系统管理和数据库管理更加直观、简单;丰富的编程接口工具,为用户进行程序设计提供了更大的选择余地;操作简单,功能强大等等。
ADO.NET组件的核心对象提供了四个版本,分别针对不同数据库。而这四个版本中,由于SQL Server同为微软的产品,微软做了优化,.NET访问SQL Server的效率最高,而且编程也更加方便、快捷。因此,选用SQL Server 2000作为本系统的数据库管理系统。
2.3 ASP.NET简介
ASP.NET是.NET Framework的一部分,它是一个统一的Web开发模型,包括创建企业级Web应用程序所必需的各种服务。特别的,开发人员还可以使用.NET Framework 类库提供的数以万计的类,并且还可以玄色公共语言运行库(CLR)兼容的任何语言(如C#、VB.NET、J#等)来编写应用程序的代码。ASP.NET主要包括以下7个方面的内容。
1.ASP.NET页和控件框架
2.状态管理
3.配置网站
4.安全基础结构
5.ASP.NET编译器
6.ASP.NET调试机制
7..XML Web Service
第3章 系统分析
本章主要完成了系统功能和性能两方面的需求分析,明确了系统的总体设计的目标。在功能模块的设计中,系统主要由用户登录和注册功能模块、用户和角色管理功能模块、文档层次管理功能模块、文档信息管理模块、文件附件和图片管理模块组成,由这五个功能模块实现系统功能。在性能方面,要求系统容易操作、高效、安全和易于维护。
3.1 系统功能需求分析
经过调研,企业信息文档管理系统应具有如下基本功能需求:
1.用户登录和注册功能
用户登录和注册功能主要包括的功能如下。
l 用户登录:验证用户的信息是否合法,以及验证用户是否为系统的合法用户。
l 用户注册:由系统管理员添加新的用户。
用户登录模块数据流图如图3-1所示。
图3-1 登录模块数据流图
2.用户和角色管理功能
用户和角色管理功能主要包括用户管理、角色管理及用户和角色之间的关系管理。在系统中主要包括用户管理、角色管理、添加角色和用户修改密码。
用户和角色功能流程图如图3-2所示。
图3-2 用户和角色管理数据流图
3.文档信息层次管理功能
文档信息层次管理功能主要是对文档信息层次的管理,如文档信息的添加、修改、删除和排序等。在系统中主要包括添加新的层次、修改层次、删除层次和排序层次。
文档信息层次管理数据流图如图3-3所示。
图3-3 文档信息层次管理据流图
4.文档信息管理功能
文档信息管理功能主要实现文档管理功能,如文档的添加、修改、删除、查看以及文档的浏览功能等。在系统中主要包括管理文档、添加文档、修改文档、查看文档和浏览文档。
文档信息管理功能数据流程图如图3-4所示。
图3-4 用户和角色管理数据流图
5.文档附件和图片管理功能
文档附件和图片管理功能主要是对文档的附件或图片进行管理,如附件或图片的添加、上载、删除等。在系统中主要包括显示附件和图片、上载附件和图片以及删除附件和图片。
文档附件和图片管理功能如图3-5所示
图3-5 文档附件和图片管理数据流图
3.2 系统模块划分
按照3.1的系统功能设计,可以把企业信息文档管理系统划分为用户登录和注册模块、用户和角色模块、文档信息层次管理模块、文档信息管理模块、文件附件和图片管理模块。它们之间关系如图3-6所示。
删除层次
企业信息文档管理系统
用户登录和注册模块
文档信息层次管理模块
用户和角色管理模块
文档信息管理模块
文件附件和图片管理模块
用户登录
用户注册
修改用户和角色
用户修改密码
添加用户和角色
添加层次
查看文档
修改文档
添加文档
修改层次
排序层次
上载附件和图片
查看附件和图片
删除附件和图片
图3-6企业信息文档管理系统模块划分图
3.3系统性能需求分析
(1) 操作简便
系统在主界面上方设置菜单的同时,在主界面的左部设置了树形菜单,在主界面右侧显示详细信息,方便用户使用。把各个功能按各自的特点分开操作,让人一目了然。在实现某个功能时如果牵涉到其它功能,则使用链接链接到相关的功能界面,不需要用户自己去寻找相应的功能界面。
(2) 提高工作效率
数据库中每张表中的每插入一行,编号都是系统自动生成的,方便统一管理。系统在处理日常业务时尽量自动化,减轻用户的负担。
第4章 数据库设计
本章主要介绍了数据库设计的重要性并对专利管理信息系统的数据库进行了分析与设计。通过分析,完成了功能模块表、角色表、用户表、文档层次表、文档表、文档附件表的设计,通过系统的需求分析来设计每个表的数据项。通过对数据库概念结构的设计和逻辑结构的设计清晰地展现了系统的数据库总体设计
4.1 数据库结构分析与创建
对于应用程序来讲需要一个保存数据的地方,要保存海量或大量的数据就需要用到数据库,数据库是信息系统的核心和基础。数据库严格来说是按照数据结构来组织、存储和管理数据的“仓库”,提供存储、维护、检索数据的功能,使信息系统能够方便、及时、准确的从数据库中获取所需的信息。数据库设计是指根据用户的需求,在某一具体的数据库管理系统上,设计数据库的结构和建立数据库的过程,是信息系统开发过程中首要和基本的内容,一个信息系统的各个部分能否紧密的结合在一起以及如何结合,关键在数据库。因此必须对数据库进行合理设计。开发的主要过程为:理解用户的需求,然后,把它们转变为有效的数据库设计,把设计转变为实际的数据库,并且这些数据库带有功能完备、高效能的应用。
在本系统数据库中,各个表之间的管理比较简单,表之间的引用关系也比较简单。用户表User通过Role表和功能表Tree形成关联;文档表Document分别与用户表User、文档层次表Category和文档附件表Attachment形成关联。
4.2 概念结构设计
概念结构设计是在需求分析的基础上,按照特定的方法把它抽象为一个不依赖于任何具体机器的数据模型,即概念模型。概念结构设计不要求设计者考虑过多复杂的现实细节,而只集中在最重要的信息的组织结构和处理模式上。这样才能更好地、更准确地用某一数据库管理系统实现这些需求,它是整个数据库设计的关键。概念结构的主要特点是能真实、充分地反映现实世界;易于理解;易于更改;易于向关系、网状、层次等各种数据模型转换。设计概念结构通常有一下四种策略:
(1) 自顶向下,即首先定义全局概念结构的框架,然后逐步细化。
(2) 自底向上,即首先定义各局部应用的概念结构,然后将它们集成起来,得到全局概念结构。
(3) 逐步扩张,首先定义最重要的核心概念结构,然后向外扩充,以滚雪球的方式逐步生成其他概念结构,直至总体概念结构。
(4) 混合策略,即将自顶向下和自底向上相结合,用自顶向下策略设计一个全局概念结构的框架,以它为骨架集成由自底向上策略中设计的各局部概念结构。其中最经常采用的策略是自底向上方法。即自顶向下进行需求分析,然后再自底向上设计概念结构。
通常概念结构设计的方法为:一般先画出组织的局部E-R图,然后将其合并,在此基础进行优化和美化。
企业信息文档管理系统的E-R图如图4-1所示:
图4-1 企业信息文档管理系统E-R图
4.3 逻辑结构设计
逻辑结构设计的任务就是把概念结构设计阶段设计好的基本E-R图转换为与选用的数据库管理系统产品所支持的数据模型相符合的逻辑结构。
逻辑结构设计一般分以下三步进行:
(1) 将概念模型向一般关系、网状和层次模型转化。
(2) 将得到的一般关系、网状和层次模型向特定的数据库管理系统产品所支持的数据模型转化。
(3) 依据应用的需求和具体的数据库管理系统的特征进行调整和完善。
本系统选用的数据库管理系统是SQL Server 2005,因此,逻辑结构应与其所支持的数据模型相符合,对关系模式进行必要的分解合并和优化,形成需要的逻辑结构。
1.功能模块表(Tree)
功能模块表Tree用来存储功能模块的数据,如表4-2所示:
表4-2 Tree表
字段名
数据类型
字段说明
键引用
备注
TreeID
int
功能模块ID
PK
主键(自动增一)
Title
varchar(200)
功能模块名称
ParentID
int
父节点ID
Url
varchar(200)
页面链接地址
ProName
varchar(200)
所属工程名称
2.角色表(Role)
角色表Role表存储系统的角色数据,如表4-3所示:
表4-3 Role表
字段名
数据类型
字段说明
键引用
备注
RoleID
int
角色ID
PK
主键(自动增一)
RoleName
varchar
角色名称
TreeID
int
关联的功能模块ID
引用Tree的Tree
ID字段
3.用户表(User)
用户表User用来存储用户的数据,如表4-4示:
表4-4 User表
字段名
数据类型
字段说明
键引用
备注
UserID
int
用户ID
PK
主键(自动增一)
UserName
varchar(200)
用户名称
Password
varchar(200)
用户密码
E-mail
varchar(200)
电子邮件
RoleID
int
所属角色
FK
引用Role表的RoleID字段
4.文档层次表(Category)
文档层次表Category 用来储存文档层次的信息,如图4-5所示。
表4-5 文档层次表
字段名
数据类型
字段说明
键引用
备注
CategoryID
int
层次ID
PK
主键(自动增一)
Desn
varchar(200)
层次名称
parentID
int
上级层次ID
OrderBy
int
排序顺序号
5.文档表(Document)
文档表Document用来存储系统的文档数据,如表4-6所示:
表4-6文档信息表
字段名
数据类型
字段说明
键引用
备注
DocumentID
int
文档ID
PK
主键(自动增一)
Desn
varchar(200)
文档名称
Body
text
文档注释
CreateDate
datetime
文档创建时间
UpdateDate
datetime
文档修改时间
CategoryID
int
文档所属层次ID
FK
引用Category表的CategoryID字段
UserId
int
用户ID
FK
引用User表的userID字段
LastVierwDate
datetime
最后查看时间
LastVierwer
varchar(200)
最后查看人
ViewCount
int
查看次数
Author
varchar(200)
文档作者
FromSource
varchar(200)
文档来源
IsAttachment
int
文件附件标志
0表示不包含附件;1表示包含普通附件;2表示包含图片附件;3表示既包含普通附件有包含图片附件
6.文档附件表(Attachment)
文档附件表Attachment用来存储附件的信息,如表4-7所示:
表4-7 文档附件表
字段名
数据类型
字段说明
键引用
备注
AttachmentID
int
附件ID
PK
主键(自动增一)
Desn
varchar(200)
附件名称
Url
varchar(200)
附件的链接地址
FileType
int
文件类型
AttachType
int
附件类型
DocumentID
int
文档所属层次ID
FK
引用Document表的DocumentID字段
4.4 数据库安全性和完整性
4.4.1 数据库的安全性
数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。计算机系统都有这个问题,在数据库系统中大量数据集中存放,为许多用户共享,使安全问题更为突出。在一般的计算机系统中,安全措施是一级一级设置的。
在数据库存储这一级可采用密码技术,当物理存储设备失窃后,它起到保密作用。在数据库系统这一级中提供两种控制:用户标识和鉴定,数据存取控制。
数据库安全可分为二类:系统安全性和数据安全性。系统安全性是指在系统级控制数据库的存取和使用的机制,包含:有效的用户名/口令的组合;一个用户是否授权可连接数据库;用户对象可用的磁盘空间的数量;用户的资源限制;数据库审计是否是有效的;用户可执行哪些系统操作。数据安全性是指在对象级控制数据库的存取和使用的机制,包含:哪些用户可存取一指定的模式对象及在对象上允许作哪些操作类型。
4.4.2 数据完整性
它是指数据的正确性和相容性。数据的完整性是为了防止数据库存在不符合语义的数据,防止错误信息输入和输出,即数据要遵守由应用开发者所决定的一组预定义的规则。应用于关系数据库的表的数据完整性有下列类型:
(1) 插入或修改表的行时允许不允许包含有空值的列,称为空与非空规则。
(2) 唯一列值规则,允许插入或修改的表行在该列上的值唯一。
(3) 引用完整性规则,同关系模型定义。
(4) 用户对定义的规则,为复杂性完整性检查。
(5) 允许定义和实施上述每一种类型的数据完整性规则,这些规则可用完整性约束和数据库触发器定义。
(6) 完整性约束,是对表的列定义一规则的说明性方法。
(7) 数据库触发器,是使用非说明方法实施完整性规则,利用数据库触发器(存储的数据库过程)可定义和实施任何类型的完整性规则。
第5章 系统详细与实现
本章对系统的总体分析与详细设计,完成了各功能模块的功能实现。在详细设计中,本章主要对用户登录模块、文档层次信息模块、文档附件和图片管理模块进行了详细的分析。详细介绍了系统各功能模块的具体实现方法以及操作界面。最后,在软件测试中,介绍了系添加文件和添加文件附件模块、添加用户模块的测试过程。
5.1系统主页面设计
5.1.1 系统主界面功能模块设计
系统主页面为Main.aspx,存放在文件夹“DesktopModules”下,它由页面Index.aspx、MainDesktop.aspx、LeftTree.aspx共同组成。其中头模块存放在文件夹“userControls”下。
图5-1系统主界面功能模块设计图
5.1.2 功能模块树的设计
页面LeftTree.aspx初始化功能比较简单,主要从数据库的功能模块表中获取所有加信息,然后通过LeftTreeView控件显示这些信息。页面初始化功能由函数Page_Load和函数BindTreeData()实现。程序代码如下:
public partial class LeftTree : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
///显示树型菜单
if (!Page.IsPostBack)
{
BindTreeData();
}
}
private void BindTreeData()
{
///绑定菜单树的数据,显示目录菜单
DocumentManager.Tree tree = new DocumentManager.Tree();
tree.BindLeftTreeView(LeftTreeView,false,true);
}
}
5.1.3 系统主页面
系统运行后,用户登录系统,展开功能模块的所有节点,此时页面Main.aspx如图5-1所示。
图5-2系统主界面
5.2用户登录和注册
用户登录功能由页面Default.aspx(起始页面)实现,它的代码文件为Default.aspx.cs,该页面保存在文件夹“DocumentManage”下。
5.2.1 用户登录
1.登录功能流程图
在页面Default.aspx上添加3个TextBox控件,名称分别为Username、password和validator,它们分别又来输入用户的名称、密码和验证码。在该页面上还添加了Image控件显示验证码,控件名称为Validateimage,其中验证码随即生成。登录功能流程图如图5-3所示。
图5-3登录功能流程图
2.页面初始化
页面初始化功能实现显示验证码,该功能由函数Page_Load(object sender,EventArgs e)实现。其中,验证码由随即函数GetRandomint()创建一个6位数的整数,并使用Image控件显示。Image控件的图像由页面ValidateImage.aspx创建,并保存在文件夹“DesktopModules”下,函数Page_Load(boject sender,EventArgs e)的代码如下:
public partial class ValidateImage : System.Web.UI.Page
{
private readonly string ImagePath = "../Images/Validator.jpg";
private static string sValidator = "";
private void Page_Load(object sender, System.EventArgs e)
{ if (Request.Params["Validator"] != null)
{
sValidator = Request.Params["Validator"].ToString();
}
///创建Bmp位图
Bitmap bitMapImage = new System.Drawing.Bitmap(Server.MapPath(ImagePath));
Graphics graphicImage = Graphics.FromImage(bitMapImage);
///设置画笔的输出模式
graphicImage.SmoothingMode = SmoothingMode.AntiAlias;
///添加文本字符串
graphicImage.DrawString(sValidator, new Font("Arial", 20, FontStyle.Bold), SystemBrushes.WindowText, new Point(0, 0));
///设置图像输出的格式
Response.ContentType = "image/jpeg";
///保存数据流
bitMapImage.Save(Response.OutputStream, ImageFormat.Jpeg);
///释放占用的资源
graphicImage.Dispose();
bitMapImage.Dispose();
}
}
页面Default.aspx 运行后,它的初始化页面如图5-2所示。该页面每运行一次,验证码均不相同。
图5-4页面Default.aspx初始化界面
5.2.2 用户注册
用户支持主要实现添加用户功能,由页面Adduser.aspx实现,它的代码隐藏文件为AddUer.aspx.cs。该页面保存在文件夹“DeskModules/User”下。在添加用户时,同时要设置用户的角色,即设置用户的管理权限。
1.用户注册流程图
在页面、AddUser.aspx中添加4个TextBox控件,它们的名称分别为UserName、Password、PasswordStr和Email,用来输入用户名称、用户密码、确认密码和电子邮件。下拉控件RoleList用来设置用户的角色,最后在页面上添加输入验证控件。用户注册
展开阅读全文