web校园新闻系统课程设计

更新时间:2023-03-20 13:34:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

web校园新闻系统课程设计

引 言

是微软公司最新推出的一种统一Web开发平台,与最新的数据访问技术一起可构建出强大、安全和可靠的企业级Web应用程序。的语法在很大程度上与ASP兼容,同时它还提供一种新的编程模型和结构,用于生成更安全、可伸缩和稳定的应用程序。

采取了技术的系统在性能上有了很大的改善,主要表现在以下几方面:

● 由于ASP页面每次打开都必须经过先编译后解释的过程,所以页面在反复打开时速度没有任何提升,而页面只需要一次编译后不需要重新编译,直到该页面被修改或Web应用程序重新启动。这使得在多次访问时速度有了极大的提升;

● 由于ASP没有提供任何输出数据为内容的元件,所以在使用ASP撰写数据库页面时只能借助ADO的RecordSet对象逐笔读取记录,而通过提供的DataGrid等数据库元件可以直接和数据库联系;

● 支持应用程序的实时更新,管理员不必关掉网络服务器或者甚至不用停止应用程序的运行就可以更新应用文件。应用程序文件永远不会被加锁,因此甚至在程序运行时文件就可以被覆盖,当文件更新后,系统会温和地转换到新的版本;

●采取"CodeBehind(代码分离)技术"方式编写代码使得代码更易于编写,结构更清晰,降低了系统开发与维护的复杂度和费用。

因为是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到的Web应用中。同时也是language-independent语言独立化的,所以,你可以选择一种最适合你的语言来编写你的程序,或者把你的程序用很多种语言来写,现在已经支持的有C#,VB,Jscript。将来,这样的多种程序语言协同工作的能力保护您现在的基于COM+开发的程序,能够完整的移植向。

~ 1 ~

web校园新闻系统课程设计

第一章 研究背景

1. 1 国内外研究现状及发展趋势

传统的网站新闻管理方式有两种:一种是静态HTML页面,更新信息时需要重新制作页面然后上传页面并修改相应链接,这种方式因为效率太低已不多用;另一种是基于ASP和脚本语言,将动态网页和数据库结合,通过应用程序来处理新闻,这是目前较为流行的做法。但是由于ASP技术本身的局限性使得系统有一些不可克服的缺陷。

不仅仅是下一版本的ASP(Active Server Pages,动态服务器页面),而且是建立动态Web应用程序而重新打造的全新技术,其主要特色包括:

● 语言的独立性;

● 简单的开发操作,分离程序代码和网页内容;

● 提高了执行效率;

● 简化部署与组态的操作;

● 支持客户端类型;

● 支持下一代的Web服务;

● 增进适用性;

● 增进延展性;

● 更多的支持工具;

● 更佳的安全机制;

● 会话(Session)可以跨进程、跨机器。

是把基于通用语言的程序在服务器上运行。不像以前的ASP即时解释程序,而是将程序在服务器端首次运行时进行编译,这样的执行效果,当然比一条一条的解释强很多。使运行一些很平常的任务如表单的提交客户端的身份验证、分布系统和网站配置变得非常简单。

由于的众多优点,技术发展和各种客观实际的需要,该系统选用了来开发设计,实现了对校园新闻的动态管理操作,使得对新闻信息的发布与管理更加及时、高效,提高了工作效率。

~ 2 ~

web校园新闻系统课程设计

1. 2 研究目的、意义和范围

Interner的蓬勃发展,使新闻传播方式发生了巨大的变化,传统的信息传播媒体电视、广播、报纸已经不再是人们茶余饭后的主要精神甜点,人们开始更多的关注网络新闻。由于互联网所容纳的信息量大,内容丰富,信息及时、准确,更有相关信息的全面介绍与比较,大大的方便了人们的阅读,因此在短短几年里,互联网便跻身于众多媒体之中,并具有相当一部分媒体人群。借此东风新闻网也迅速发展起来,它内容丰富,涉及商业、工业、农业、银行、财政、教育、娱乐、和信息等各个产业,信息量大,不仅有时事新闻,还有相关的行业信息,同时新闻呢网具有互联网所具备的一起特征。

其次,随着Internet的普及,越来越多的企业建立了自己的WWW网站,企业通过网站可以展示产品,发布最新动态信息,与用户进行交流和沟通,与合作伙伴建立联系,以及开展电子商务等。

其中新闻管理系统是构成企业网站的一个重要组成部分,它担负着双层作用:

一方面可以用来动态发布有关新产品或新开发项目;

另一方面又可以及时向顾客公告企业经营业绩、技术与研发进展、特别推荐或优惠的工程项目、产品和服务,从而吸引顾客,扩大顾客群。

该系统使用(C#语言)和技术开发, 实现了网站新闻的动态管理,使得对信息的管理更加及时、高效,提高了工作效率。该新闻系统具有一般新闻系统的功能,主要包括前台新闻查看区和后台管理区,可为学校各部门发布新闻,为校园网站提供新闻发布与管理的服务。

该系统是基于B/S(Browser/Server,浏览器/客户端)模式实现,基于.NET平台架构开发设计,主要实现对校园新闻的发布与管理功能,对新闻内容信息的浏览阅读等。 随着Internet/Intranet技术的兴起,将原本在单机或本地局域网上运行的数据库系统移植到因特网中,即开发基于B/S模式的新一代MIS(Management Information System,管理信息系统)系统,正成为技术发展的趋势。为了保证系统性能的高效性、可扩展性,以及达到数据共享和网络化管理的目的,本系统采用B/S体系结构进行设计开发。

~ 3 ~

web校园新闻系统课程设计

第二章 课题分析

2.1 需求分析

该系统的用户为校园网站,需要经常发布一些新闻,如何能有效地管理和发布新闻呢?最初用户的需求为:“该新闻系统具有一般新闻系统的功能,同时具有新闻审核和不同管理员不同管理权限的功能” 。

通过对其它一些新闻系统的调查发现,一般新闻系统功能如下: 前台按分类显示新闻;

搜索新闻;

后台管理:

● 添加、删除和修改新闻

● 添加、删除和修改用户

● 添加、删除和修改新闻分类

● 添加新闻

(添加成功后的新闻根据权限分为可发布新闻和待审核新闻)

需要新闻审核,说明添加后的新闻分为两种:直接发布新闻和待审核新闻,同时待审核的新闻通过管理员或审核员经审核后才可以上传到网站,管理员有不同的权限,需要有个管理权限的功能,在系统中应该有个超级管理员,具有所有权限,能够对系统进行全面管理,同时管理员可以修改自己的一些信息。

根据校园网站新闻发布管理的实际需求,在首页中能显示最热门新闻、头条新闻和最近发布的几条新闻等,同时在后台发布新闻时可以添加图片,也可以添加HTML语法,在前台能自动根据所显示的图片和HTML语法来显示新闻。

在后台管理中,因为有权限的管理员才能登录管理后台,所以需要有个登录验证模块,而且需要根据用户权限的不同显示不同的管理目录,在管理新闻和用户时,当数据少时管理起来还比较方便,如果一多则想找到某条新闻或某个用户就很难,所以需要有个查找(新闻标题、用户)模块用于查找新闻或用户。

根据以上需求分析,该系统要实现的主要功能为:

前台显示新闻部分

~ 4 ~

web校园新闻系统课程设计

● 用户登录区

● 显示最热门的前几条新闻

● 显示推荐的前几条新闻

● 显示最新的前几条新闻

● 搜索新闻功能

● 显示所有新闻分类(即部门)

● 按分类/部门显示其下的所有新闻

● 新闻详细信息浏览阅读

● 图片新闻(自动生成缩略图)

● 网站友情链接(可在管理中添加设置)

● 网站公告可显示发布了新闻没通过审核的相关通知

后台管理部分

● 登录验证

● 根据权限显示相应的管理目录

● 添加、修改和删除新闻

● 管理发布新闻

● 管理审核新闻

● 分类管理

● 用户管理

● 网站风格设置、系统设置等

2.2 新闻系统的性能需求

该系统在性能功能上应达到如下需求:

操作简单、界面友好: 完全控件式的页面布局,使得新闻的录入工作更简便,许多选项包括新闻分类、来源部门等只需要点击鼠标就可以完成;另外,跟踪出现的提示信息也让用户随时清楚自己的操作情况。对常见网站的新闻管理的各个方面:新闻录入、浏览、删除、修改、搜索等方面都大体实现,实现了网站对即时新闻的管理要求;

服务个性化系统针对不同级别和不同工作的客户可提供非常个性化的界面内容和界面形式,以满足客户的个性化需求。如管理员登录系统之后,可以只看到系统所有的内容。对于有些不必要的细节,系统会自动进行屏蔽。

即时可见,对新闻的处理(包括录入、修改、删除)将立即在主页的对应栏目显示出来,达到“即时发布、即时见效”的功能。

系统运行应该快速、稳定、高效和可靠;

~ 5 ~

web校园新闻系统课程设计

在结构上应具有很好的可扩展性和可维护性,便于将来的功能扩展和维护。

2.3 运行环境要求

2.3.1设备

客户机硬件要求

具有 Pentium III 处理器以上且满足以下要求计算机;

最低 64 MB 内存,最小 2.1 GB 硬盘。

服务器硬件要求

具有 Pentium III 处理器以上且满足以下要求计算机;

最低 256MB 内存,最小 8 GB 硬盘。

2.3.2支持程序

客户端

操作系统:Windows 98/NT/2000/XP或更高版本

浏览器:IE 5.0以上或Netscape同等版本以上

服务器

操作系统:Windows 2000 Server或

Windows 2003 Server

Web服务器:MS IIS

应用服务器:IIS、COM+等企业级应用服务器

数据库:ACCESS

~ 6 ~

web校园新闻系统课程设计

第三章 系统结构流程

3.1 新闻系统的模型结构

该系统的模型结构如图3-1所示:

图3-1-1新闻系统的模型结构图示

该系统结构分为三个逻辑层:

Web 层:Web层为客户端浏览器提供对应用程序的访问,这一层是作为解决方案文件中的 Web 项目实现的。Web 层由 Web 窗体和代码隐藏文件组成,Web 窗体只是用 HTML 提供用户操作,而代码隐藏文件实现各种控件的事件处理程序;

业务层:包含各种业务规则和逻辑的实现,业务规则完成如客户帐户的验证和字符串处理这样的任务;

数据访问层:数据访问层为业务层提供数据服务,这一层是作为解决方案文件中的 Conn类(数据访问类,实现公共操作的一个通用类)实现的;

~ 7 ~

web校园新闻系统课程设计

3.2 新闻系统的功能模块简介

web校园新闻系统课程设计

图3-2-1系统的功能模块

工作流程为:

打开该系统网站,普通浏览者能浏览、阅读和搜索新闻,能进行注册,注册后为新闻输入员,登录进入新闻后台管理区, 只有添加新闻的权限;如登录时为新闻审核员,其不但有添加新闻的权限,还有审核和管理新闻的权限;如为系统管理员,其有新闻后台管理区内的所有权限,除具有新闻审核员所有的权限外,还有添加和管理新闻分类、添加和管理用户、系统、风格和友情链接设置。

在添加新闻时,除常规的添加新闻标题、新闻内容、新闻作者和新闻简介外,还可选择是否为首页新闻、是否为推荐新闻和是否在首页滚动图片(上传图片)等,对新闻内容的字体、字号和字体颜色可以调整,类似Word的一些简单的编辑功能,还可设置超链接和插入表格等。如添加新闻者为新闻输入员,其所添加的新闻需要系统管理员或审核员经审核后才能发布到网上;如是管理员或者审核员添加新闻的话,不需要再经谁审核,直接可以发布到网上。

管理新闻功能包括对任一条新闻内容可作相应修改,也可删除任何一条不再需要保留的新闻。管理新闻分类包括对新闻分类名称作修改,也可将任一分类名删除,删除后其分类下的所有新闻也将被删除。添加用户时,用户等级可为管理员、审核员或者输入员之一,管理用户包括修改用户名、密码和用户等级,也可将任一用户删除。

系统设置包括设置网站标题、网站地址、首页图片、网站公告(可用来显示当前有哪些新闻输入员所添加的新闻没有通过审核,具体的原因理由等)、网站链接(此文本内容可更改)和底部信息(可放置一些与站点相关的文本内容等),对系统设置里的内容,随时可做相应的修改,这权限只有系统管理员才拥有。风格设置指从系统八种风格里任选一种作为当前网站的默认风格。友情链接主要是以图片的形式链接到其它网站,作用跟系统设置里的网站链接功能一样。

第四章 使用技术的介绍

4.1 .NET Framework概述

.NET Framework 是用于 .NET 平台的编程模型,其关键组件

~ 9 ~

web校园新闻系统课程设计

是公共语言运行库(CLR,Common Language Runtime)和 .NET Framework 类库(包括 、 和 Windows 窗体),它提供了托管执行环境、简化的开发和部署以及与各种编程语言的集成,是支持生成和运行下一代应用程序和 XML Web services 的内部 Windows 组件。

.NET Framework 旨在实现下列目标:

提供一个一致的面向对象的编程环境,而无论对象代码是在本地存储和执行,还是在本地执行但在 Internet 上分布,或者是在远程执行的;

提供一个将软件部署版本控制冲突最小化的代码执行环境; 提供一个可提高代码(包括由未知的或不完全受信任的第三方创建的代码)执行安全性的代码执行环境;

提供一个可消除脚本环境或解释环境的性能问题的代码执行环境;使开发人员的经验在面对类型大不相同的应用程序(如基于 Windows 的应用程序和基于 Web 的应用程序)时保持一致;

按照工业标准生成所有通信,以确保基于 .NET Framework 的代码可与任何其他代码集成。

公共语言运行库是 .NET Framework 的基础,可以将运行库看作一个在执行时管理代码的代理,它提供内存管理、线程管理和远程处理等核心服务,并且还强制实施严格的类型安全以及可提高安全性和可靠性的其他形式的代码准确性。事实上,代码管理的概念是运行库的基本原则。以运行库为目标的代码称为托管代码,而不以运行库为目标的代码称为非托管代码。

.NET Framework 类库是一个综合性的面向对象的可重用类型集合,可以使用它开发多种应用程序,这些应用程序包括传统的命令行或图形用户界面 (GUI) 应用程序,也包括基于 所提供的最新创建的应用程序(如 Web 窗体和 XML Web Services)。

4.2 、和C#语言简介

结构是一个三层系统:UI层、业务逻辑层和数据层,结构模型如图

4-2-1所示:

~ 10 ~

web校园新闻系统课程设计

图4-2-1 的结构模型

● UI层负责与用户交互,接收用户的输入并将服务器端传来的数据呈现给客户;

● 业务逻辑层负责接收浏览器传来的请求并将请求传给数据层,同时将请求处理结果发给浏览器。它由Web表单、XML Web Services和组件服务组成,其中Web表单是应用程序的核心所在,它是向客户呈现数据和信息的基础,也是响应和处理客户与显示的Web表单交互生成的信息和数据的基础;

● 数据层是通过操纵数据为事务逻辑层提供数据服务,如存储数据操作结果、返回数据检索结果等。

提供对Microsoft SQL Server、OLEDB和XML公开的数据源的一致性访问,数据共享用户应用程序可以使用来连接到这些数据源,并检索、操作和更新数据。

有两个核心组件:DataSet 和 .NET Framework 数据提供程序,后者是一组包括 Connection、Command、DataReader 和 DataAdapter 4个对象在内的组件,其组件结构如图4-2-2所示:

~ 11 ~

web校园新闻系统课程设计

图4-2-2 的组件结构图示

DataSet对象是 的断开式结构的核心组件,实现独立于任何数据源的数据访问。Connection 对象提供与数据源的连接,是操作数据库的基础,表示应用程序和数据源之间的惟一会话。Command 对象能够访问用于返回数据、修改数据、运行存储过程以及发送或检索参数信息的数据库命令,实现对数据源的操作,如查询、插入、修改和删除等。DataReader 对象从数据源中读取只进且只读的数据流。DataAdapter 对象是DataSet 对象和数据源之间关联的桥梁,用数据源填充DataSet并解析更新。设计 组件的目的是为了从“数据操作”中分解出“数据访问”。

C#语言是.NET中一种崭新的语言,C#是由C和C++派生而来的一种“简单、流行、面向对象、类型安全”的程序设计语言,C#意在综合Visual Basic的高效率和C++的强大功能。

C#是微软公司发布的一种面向对象的、运行于.NET Framework之上的高级程序设计语言。并定于在微软职业开发者论坛(PDC)上登台亮相。C#是微软公司研究员Anders Hejlsberg的最新成果。C#看起来与Java有着惊人的相似;它包括了诸如单一继承、接口、与Java几乎同样的语法和编译成中间代码再运行的过程。但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司.NET windows网络框架的主角。

~ 12 ~

web校园新闻系统课程设计

第五章 新闻系统的主要开发过程

5.1 数据库设计

数据库设计是系统设计中非常重要的一个关键环节,因为数据库设计就像在建设高楼大厦一样,有稳固的基础,才能有优秀的成果。如果设计不好,在后面的系统维护、变更和功能扩充时,甚至在系统开发过程中,将会出现问题,会遇到非常大的困难,大量工作将会重新进行。

本实例采用SQL server 2000数据库系统,在该系统中新建一个数据库,并将其命名为db_news。然后,在该数据库创建三个数据表,分别为用户信息表(tbUser)、新闻信息表(tbNews)和网站友情链接表(tbLink)。

●tbUser(用户信息表)

用户信息表主要用于保存管理员的基本信息,tbUser数据表的结构如表5-1-1所示。

表5-1-1用户信息表

●tbNews(新闻信息表)

新闻信息表主要用于保存新闻的基本信息,tbNews数据表的结构如表5-1-2所示。

表5-1-2新闻信息表

~ 13 ~

web校园新闻系统课程设计

●tbLink(网站友情链接表)

网站友情链接表主要用于保存其他网站信息,该数据表的结构如表5-1-3所示。

表5-1-3网站友情链接表

5.2各主要窗体页的图形界面介绍

首页:主要功能是显示最热门、最新和推荐的前8条新闻,显示新闻搜索功能、页面风格设置、新闻分类、滚动新闻图片和网站公告等;如图5-2-1所示:

如图5-2-1

~ 14 ~

web校园新闻系统课程设计

新闻详细内容查看页:在首页里点击新闻标题所进入的页面,显示当前所点击新闻的详细内容,新闻标题正中加粗显示,在添加新闻时,根据所编辑的新闻内容对应显示;如图

5-2-2

如图5-2-2

新闻输入员页面:新闻输入员只具有添加新闻的权限,任何浏览者都可注册成为新闻输入员,但所添加的新闻并不能直接发布到网站上显示,而需经过审核员或管理员审核是否给予通过,这保证了网站内容管理的合理性,并不是随便添加的新闻都能发布;如图

5-2-3

如图5-2-3

~ 15 ~

web校园新闻系统课程设计

新闻管理员页面:管理员具有系统的所有权限,除审核员的审核新闻、添加新闻和管理新闻外,还可添加新闻部门和用户。对用户和新闻部门进行管理,包括修改用户ID和密码,删除用户,更改部门名称,删除新闻部门,管理员所添加的新闻也不再需要审核而可以直接发布。如图:

5-2-4

如图:5-2-4

5.3 页面的风格设计

为使该系统的页面美观多样,在设计时使用了8种样式风格。为了在页面设计时方便调用,将其存储于数据库的Lb_Skins(风格样式)表中,各窗体通过调用style.css文件来设计界面外观。

CSS是Cascading Style Sheets(层叠样式表单)的简称,简称样式表,它是一种设计网页样式的技术。CSS代码的基本语句结构为:选择符{属性名:属性值},选择符可以是HTML中任何的标签或自定义标识符,比如P、DIV、IMG甚至BODY都可以作为选择符。

CSS在HTML文档中有三种用法:

一种是把CSS文档放到<head>文档中:

<style type=“text/css”> </style>;

另一种方法是采用<style=“ ”>的格式把样式写在任何html标签中的行内,这种方法比较方便灵活;

还有一种方法是:把编辑好的CSS文档保存成“.CSS”文件,

~ 16 ~

web校园新闻系统课程设计

然后在<head>中定义,定义的格式为:<head> <link href="style.css" type="text/css" rel="stylesheet"> </head> ,<link>和“rel=stylesheet”指连接的元素是一个样式表文档,“href=‘style.css’”指的是需要连接的文件地址。这种方法非常适宜同时定义多个文档,能使多个文档同时使用相同的样式,从而减少了大量的冗余代码。

5.4 系统配置

5.4.1 Web.config文件配置

应用程序的配置功能放在Web.config文件中,它包含每一个具体Web应用程序的配置信息。在程序运行时,使用分层虚拟目录结构的Web.config文件提供的配置信息为每个惟一的URL资源计算一组配置设置,然后缓存结果配置设置,以供所有页面对资源的请求使用。

Web.config文件对于访问站点的用户来说是不可见的,而且也是不可访问的,它基于XML,每个配置文件都包含XML标记和子标记的嵌套层次结构。

新闻系统的Web.config文件中的配置:

<configuration>

<appSettings>

<addkey="conStr”value="Server=(local);database=db_news;Uid=sa;Pwd=;"/>

</appSettings>

</configuration>

说明:

Data Source是数据库服务器的名称;

Uid是链接数据库用户名;

Pwd链接数据库的密码;

Database是使用的数据库名称。

5.4.2 配置发布主页

首先要创建虚拟目录,新建虚拟目录的步骤如下:

● 打开IIS(Internet 信息服务),在默认网站上右击 在快捷菜单中选择新建—>虚拟目录;

● 在弹出的虚拟目录创建向导对话框里点击“下一步”; ● 输入虚拟目录别名;

~ 17 ~

web校园新闻系统课程设计

● 选择网站内容所在目录路径;

● 设置“访问”权限。

在所建虚拟目录上右击,在弹出菜单中选择浏览,或在浏览器里输入相应网址,都可运行浏览程序。虚拟目录不在目录列表中显示(也称为 WWW 服务的“目录浏览”),要访问虚拟目录,用户必须知道虚拟目录的别名并在浏览器中键入 URL。对于 WWW 服务,也可以在 HTML 页面中创建链接。发布网站的时候,把程序首页的名字(index.aspx或default.aspx)写在IIS当中就可以访问了。

5.5 系统部分重要功能及其代码

5.5.1 Web用户控件

该系统中创建了两个Web用户控件top.ascx和bottom.ascx,在首页、新闻详细内容查看、新闻分类等页面的HTML代码里都进行了引用,调用方式为:

<%@RegisterTagPrefix="uc1"Tag"bottom"Src="bottom.ascx"%> <%@ Register TagPrefix="uc1" TagName="top" Src="top.ascx" %>

@ Register指令注册用户控件,同时把属性TagName(标签名)和TagPrefix(标签前缀)添加到@ Register指令中,Src属性表示该用户控件相对于父页面的相对地址。用户控件也是服务器端控件,还必须在用户控件代码中添加Runat=server属性,用法如下: <uc1:top id="Top1" runat="server"></uc1:top>

<uc1:bottom id="Bottom1" runat="server"></uc1:bottom>

其中top.ascx用户控件作用是显示首页图片、“首页”文本字体、新闻分类、新闻风格和当前日期,bottom.ascx用户控件作用是显示底部相关网站信息等。

用户控件是非常易于代码重用的,可以把许多相关功能和用户界面封装在一个用户控件中,然后在任何需要该功能的地方重用此控件。

5.5.2 通用类代码

在所有相关页面显示文件和Web用户控件的代码隐藏文件.aspx.cs或.ascx.cs中,通过对数据访问类的引用(以创建类实例方式),调用数据访问类里的相应函数完成相关功能,如建立数据库连接、打开和关闭数据库、对数据库执行查询、插入、删除和更新操作、页面登陆检验等。

~ 18 ~

web校园新闻系统课程设计

此处列举Conn类(数据访问类)中主要函数的源码:

public class Conn

{

Public OleDbConnection Lb_Conn=new OleDbConnection(strConn); public static string strConn

{

get

{

StringBuilder strResult = new StringBuilder();

strResult.Append("Provider = Microsoft.Jet.OLEDB.4.0");

strResult.Append("; ");

strResult.Append("Data Source = ");

strResult.Append(HttpContext.Current.Server.MapPath(".")); strResult.Append("\\");

strResult.Append(ConfigurationSettings.AppSettings["MdbPath"]); return strResult.ToString();

}

}

public OleDbDataReader ExecuteOleDbDataReader(string strSql) {

OleDbCommand cmd=new OleDbCommand(strSql,Lb_Conn) OleDbDataReader rd=cmd.ExecuteReader();

return rd;

}

public DataSet CreateDataSet(string strSql,string tableName) {

OleDbDataAdapter da=new OleDbDataAdapter(strSql,Lb_Conn); DataSet dst=new DataSet();

da.Fill(dst,tableName);

return dst;

}

public int ExecuteSql(string strSql)

{

OleDbCommand cmd2=new OleDbCommand(strSql,Lb_Conn); int result=cmd2.ExecuteNonQuery();

return result;

}

~ 19 ~

web校园新闻系统课程设计

}

'数据起始位置:2个CRLF开始

DataStart = InStrB(PosOpenBoundary,FormData,str2bin(VbCrLf & VbCrLf)) + 4

If FormFileName 〈〉 "" Then

B(DataStart,FormData,DivStr) - DataStart - 1

FormFieldData = MidB(FormData,DataStart,DataSize)

Else

'数据长度,减2是因为分隔标志串前有一个CRLF

DataSize = InStrB(DataStart,FormData,DivStr) - DataStart - 2 FormFieldData = bin2str(MidB(FormData,DataStart,DataSize)) End If

'建立一个Dictionary集存储Form中各个Field的相关数据 Set Field = CreateUploadField()

= FormFieldName

Field.FilePath = FormFileName

Field.FileName = GetFileName(FormFileName)

Field.ContentType = FormFileCT

Field.Length = LenB(FormFieldData)

Field.Value = FormFieldData

Fields.Add FormFieldName, Field

PosOpenBoundary = PosCloseBoundary

PosCloseBoundary = InStrB(PosOpenBoundary + 1,FormData,DivStr) Wend

Set GetUpload = Fields

End Function

'把二进制字符串转换成普通字符串函数

Function bin2str(binstr)

Dim varlen,clow,ccc,skipflag

'中文字符Skip标志

skipflag=0

ccc = ""

If Not IsNull(binstr) Then

varlen=LenB(binstr)

For i=1 To varlen

If skipflag=0 Then

clow = MidB(binstr,i,1)

~ 20 ~

web校园新闻系统课程设计

'判断是否中文的字符

If AscB(clow) 〉 127 Then

ccc =ccc & Chr(AscW(MidB(binstr,i+1,1) & clow))

skipflag=1

Else

ccc = ccc & Chr(AscB(clow))

End If

Else

skipflag=0

End If

Next

End If

bin2str = ccc

End Function

'把普通字符串转成二进制字符串函数

Function str2bin(varstr)

str2bin=""

For i=1 To Len(varstr)

varchar=mid(varstr,i,1)

varasc = Asc(varchar)

' asc对中文字符求出来的值可能为负数,

' 加上65536就可求出它的无符号数值

' -1在机器内是用补码表示的0xffff,

' 其无符号值为65535,65535=-1+65536

' 其他负数依次类推。

If varasc〈0 Then

varasc = varasc + 65535

End If

'对中文的处理:把双字节低位和高位分开

If varasc〉255 Then

varlow = Left(Hex(Asc(varchar)),2)

varhigh = right(Hex(Asc(varchar)),2)

str2bin = str2bin & chrB("&H" & varlow) & chrB("&H" & varhigh) Else

str2bin = str2bin & chrB(AscB(varchar))

End If

Next

~ 21 ~

本文来源:https://www.bwwdw.com/article/bsu4.html

Top