《毕业设计论文DOTNET版的个人博客实现.doc》由会员分享,可在线阅读,更多相关《毕业设计论文DOTNET版的个人博客实现.doc(42页珍藏版)》请在三一办公上搜索。
1、DONTNET 版的个人博客实现DOTNET版的个人博客实现摘 要博客,是最近几年出现的一个新现象。“它成了类似于个人主页的东西,但又无需雕饰,只需自由而随意地表达自己的看法即可,类似于一种公开的个人日记”。这样的说法恐怕代表了一种很大众化的倾向。其实,博客已经开始其初现商业价值:博客炒红了很多平凡的人。像木子美、李寻欢、芙蓉姐姐等就是典型的例子。走红后的这些网络红人随后便开始接拍电影、做广告、演讲走秀等,进行商业圈内的各种活动。相信不久还会涌现出一批像网络歌手庞龙、杨臣刚一样红得发紫的人才,这足以让更多的人趋之若骛。从博客的开发经济价值来看,尽管有人想到在这里牟利,目前虽然还没有当成一种产业
2、来发展,大多网络空间区,还是闲暇的场所;但是,随着高科技的发展,我想,博客的功能会更加健全,人们的交往将从虚拟走向现实。在高科技的支撑下,从事这个平台的人就会增加,一些开发商可能会对这块肥肉很感兴趣,投资开发博客的厂商就会有可能像今天发展网上商店一样多如牛毛。博客是因特网的产物,所以,同时它亦结合了多媒体技术在里,说到多媒体这个方面嘛,先说说其两个显著特点:首先是它的综合性,它将计算机、声像、通信技术合为一体,是计算机、电视机、录像机、录音机、音响、游戏机、传真机的性能大综合;其次是充分的互动性,它可以形成人与机器、人与人及机器间的互动,互相交流的操作环境及身临其境的场景,人们可以根据需要进行
3、控制。人机相互交流是多媒体最大的特点,也可以说是一次革命,因为体现人可以根据需要进行控制,不再觉枯燥无味。新开发的技术里,将会使博客与多媒体技术互融得更好。关键词 ASP.NET2.0 / .NET XML/ 博客 DOTNET version of the personal blog realizeAbstractBlog, in recent years there has been a new phenomenon. It has become similar to the personal home page of things, but without Carving only fr
4、ee and freely express their own views only. similar to an open personal diary. I am afraid this statement on behalf of a very popular trend. In fact, the blog has begun its early commercial value : red blog speculation of a lot of ordinary people. Like Mu Zimei, Lixinhuan, Sister Furong, etc., is a
5、typical example. The success of these networks will begin next star of the film star, advertising, lectures Zouxiu. commercial sphere of activities. I believe soon there will emerge a group of singers sheng, like the network, he, just like in the Red empurple talent This is sufficient to allow enjoy
6、ed by more people. Blog from the economic value of the development, although some thought here profit, Although not as an industry to develop, most of the network space, or leisure establishments; However, With the development of high technology, I think the blog function will be more complete, the
7、exchanges between people from virtual to reality. In the high tech support, in the platform of the people will increase, some developers may be interested in this piece of meat. invest in the development of manufacturers blog will be like today with the development of numerous online shops like. Blo
8、g is the product of the Internet, and it also combines the multimedia technology in Bali, said the multimedia aspects, right first to give its two notable features : First is its comprehensiveness, it will computers, audio-visual and communication technologies were integrated, computers, TV sets, VC
9、Rs, tape recorders, audio, games, fax machines, large integrated; Second is fully interactive, it can form and the machine, human and machine interaction between the exchanging of operating environment and the thick of the scene, People need to be under control. Man-machine interaction is the larges
10、t multimedia features, it can also be a revolution, because people can reflect the need for control, not McGREGOR dull.Keywords: ASP.NET2.0/. NET/ XML/ blog 目 录摘 要IABSTRACTII1 绪 论11.1 课题背景11.2课题研究目的和研究内容11.3 设计思想12 开发工具介绍32.1 VS2005的介绍32.2 DOTNET的简介62.3 SQL SERVER2005数据库支持113需求分析143.1研究设计中要解决的问题143.
11、1.1 市场需求143.1.2功能分析143.1.3性能分析143.1.4 系统功能图153.2具体实现中采用的关键技术及复杂性分析173.2.1系统结构173.2.2用户管理183.2.3页面结构193.2.4 ASP.NET对象的使用193.2.5 采用了UrlReWrite技术213.2.6页面出错处理264 设计与实现274.1设计实现的策略和算法描述274.1.1 BLOG设计思想274.1.2 BLOG数据库设计274.1.3数据访问294.1.4数据绑定304.1.5 RSS的实现314.2编程模型及数据结构335 总结345.1技术总结345.2页面预览35致谢38主要参考文献
12、39381 绪 论1.1 课题背景DOTNET一出现,就在C/S和B/S结构的软件开发中占据着重要的地们。如今DOTNET已经在B/S开发中得到了广泛的应用,而且很多企业都采用DOTNET的B/S结构才开发自己企业的产品网站,以及企业内部的管理系统。DOTNET之所以可以在发布很短的时间里就得到如此好的成绩,与微软产品的人性化设计分不开,加上VS2005(该博客采用的开发环境)的所见即所得大大减少了软件开发的周期,同时也保证了开发难度和后期测试的工作可以有效进行。DOTNET在B/S开发中如此容易,那么在各类的中大型的门户网站中都为用户准备了博客,让大家可以拥有自己的空间。如此,如何满足广大用
13、户对自定义的博客的需求,我在基本对DOTNET的B/S开发能力得到保证的基础上,尽量采用了DOTNET中新的元素,个人博客的实现正是采用了DOTNET的可视公开发环境,使博客界面在开发初期就呈现出来,让开发者可以容易修改和测试实际效果。1.2课题研究目的和研究内容该个人博客是采用DOTNET的B/S模式三层结构设计模式,设计中所用到的技术都是B/S开发所需要的技术知识,其中包括MasterPage,URL重写技术,SQL2005数据操作,存储过程,XML技术,RSS技术,以及ASP.NET的对象,对这些技术知识的应用,将所以B/S基础开发的技术包括在内,以利于将来参加工作对DOTNET技术知识
14、的需求。1.3 设计思想该个人博客的采用文章浏览与用户管理相分离的设计模式,各自与数据库直接操作。在用户管理这块,用户正确登陆后可以修改自己的登陆信息,对文章进行修改和 ASP另一个亮点是它使用ADO对象,ODBC, OLE-DB和事务处理管理器。因此ASP Web添加的操作,另外还有对文章类型的添加操作,对文件的管理中,可以把文章分类管理;在文章浏览这一块,把页面分成四部分,即顶部的大标题,左侧的文章类型分类,右侧的文章列表,下部的版权信息;同时在顶部的大标题中列出菜单导航。在顶部区域分为LOG和导航菜单,导航菜单主要是包括不同类别的文章菜单以及链接到用户管理系统。在左侧实现:博客欢迎信息以
15、及作者的简单信息,文章类别,还有RSS的XML实现,还有一些特别的链接技术图片。右侧的实现比较复杂,主要是根据选择进行加载不同的页面,最主要的是文章列表和文章浏览,在浏览文章时,显示评论中的前五条记录,浏览者可以查看所有的评论,还可以自己参与评论。2 开发工具介绍2.1 VS2005的介绍微软公司在2005年12月初发布新一代企业级应用开发平台.NET Framework 2.0和开发工具Visual Studio 2005。 现代信息部门的开发团队必须因应高度竞争的商业环境,快速进行应用软件系统的设计、开发、测试以及部署带领企业赢得市场。大部分的软件开发团队,都面临以下几项挑战:开发团队间的
16、沟通困难,开发工具形形色色,分散且难以互相整合开发程序、开发标准难以建立。 Microsoft Visual Studio 2005 开发工具系列,有许多令人期盼已久的强化功能,提供更高的程序开发效率、更精简的程序代码、与更佳的安全性。课程将介绍这些令人赞赏的新特色,包括 .NET Framework 2.0、ASP.NET 2.0、64-bit 程序开发支持、新的 Windows Form 程序设计、以及对行动装置解决方案的全新开发支持。更精彩的是,首度推出的 Visual Studio Team System 是与开发工具完全整合的软件开发生命周期管理平台,与 Agile 方法论以及 CM
17、MI 规范整合,除了软件开发流程更加严谨之外,软件开发的质量与时间也更能掌控,将一贯以来 Visual Studio 开发工具支持个人开发者高生产力的优势延伸至支持整个高效率及流程导向的开发团队。(1) 下面就是VS2005的开发环境。图1-1 VS2005的开发环境(2)下面的是属性栏。图1-2 属性栏(3)下面的是VS2005环境中的工具箱 图1-3 工具箱(4)下面的是VS2005中的解决方案资源管理器(本设计中的解决方案)图1-4 资源管理器以上各部分将在本设计中经常用到。也是VS2005开发过程中经常需要对代码控件进行设置和修改的地方。在VS2005开发B/S软件过程中,以aspx结
18、尾的文件是前台文件,而以aspx.cs才是后台操作代码。是与前台文件分离出来了,有助于我们相对自己需要的操作对代码进行修改和更新。 图1-5视图代码切换点击“设计”或“源码”就可以在前台视图和前台代码之间进行切换。2.2 DOTNET的简介MicroSoft .NET的策略是将互联网本身作为构建新一代操作系统的基础,对互联网和操作系统的设计思想进行合理延伸。这样,开发人员必将创建出摆脱设备硬件束缚的应用程序,以便轻松实现互联网连接。MicroSoft .NET无疑是当今计算机技术通向计算时代的一个非常重要的里程碑。 .NET的核心组件有: 一组用于创建互联网操作系统的构建块,其中包括Passp
19、ort.NET(用于用户认证)以及用于文件存储的服务、用户首选项管理、日历管理以及众多的其它任务。 构建和管理新一代服务的基本结构和工具,包括Visual Studio.NET、.NET企业服务器、.NET框架和Windows.NET 。 能够启用新型智能互联网设备的.NET设备软件。 .NET对最终用户来说非常重要,因为计算机的功能将会得到大幅度提升,同时计算机操作也会变得非常简单。特别地,用户将完全摆脱人为的硬件束缚:用户可以自由冲浪于互联网的多维时空,而不是束缚在便携式电脑的方寸空间可通过任何桌面系统、任何便携式电脑、任何移动电话或PDA进行访问,并可对其进行跨应用程序的集成。 .NET
20、可使用户轻松进行互联网连接,并轻松完成那些在当今看来十分费时而且费力的事务,它们往往要求用户进行数据重输入并需运行几个小时才能完成。通过将多项安全数据流合并到单一的用户界面(或者甚至是可编程决策引擎),.NET架构将用户从充斥于当今Web的数据竖井的束缚中解脱出来。用户可以自由访问、自由查看、自由使用他们的数据。 .NET对开发人员来说也十分重要,因为它不但会改变开发人员的开发应用程序的方式,而且使得开发人员能创建出全新的各种应用程序。新型开发范例的核心是Web服务这个概念的引入。Web服务是一种通过简单对象访问协议(SOAP),在互联网上展露其功能性的、极为公开的服务。SOAP是一种基于可扩
21、展标记语言(XML)制定的协议。 在过去,开发人员通过集成本地系统服务来构建应用程序。在这种模型下,开发人员可以访问丰富的开发资源并能严格控制应用程序的行为。 如今,开发人员已在很大程度上挣脱了这种模型的束缚,致力于构建具有复杂结构的n层化系统,这种系统能将网络上众多的应用程序一并进行集成,大大提升了应用程序的价值。这样,开发人员便可把精力集中在充分挖掘软件独特的商业价值,而不是构建基本结构上。可喜的局面将应运而生:软件投放市场的时间大大缩短、开发人员的编程效率明显提高,最终把质量上乘的软件呈现给用户。 我们正在进入一个崭新的计算时代一个由互联网(尤其是Internet核心技术XML)实现的时
22、代。利用XML,能够创建出可供任何人从任何地方使用的、功能非常强大的应用程序。它极大地拓展了应用程序的功能,并实现了软件的动态提供。在这种情况下,软件已不完全指那些从光盘进行安装的程序,而是演变成了一种服务类似于ID调用程序或按收看次数进行收费的电视人们可通过通信媒体订购的服务。 n层计算技术具有能够大幅度提高生产力、紧密耦合的特点,而Web概念具有面向消息、松散耦合的特点,我们将二者有机地糅合在一起,实现了上述构想。我们将这种计算风格称为Web服务,它的出现标志着人类已经迈入应用程序开发技术的新纪元。Web服务是一种应用程序,它可以通过编程并使用标准的Internet协议,像超文本传输协议(
23、HTTP)和XML,将功能展示在互联网和企业内部网上。还可将Web服务视作Web上的组件编程。 .NET正是根据这种Web服务原则而创建的,微软目前正着手提供这个基本结构,以便通过.NET平台的每一部分来实现这种新型的Web服务。而Visual Studio.NET、.NET框架、Windows.NET和.NET企业服务器,正是为进行基于Web服务模型的应用程序开发而度身定做的新一代开发工具和基本结构。.NET构建块服务、新增的.NET设备支持以及即将到来的.NET用户体验,将为人们彻底攻克这一难题划上一个圆满的句号,使人们能够充分利用Web服务模型,如愿以偿地开发出新一代应用程序。NET E
24、nterprise Servers和Windows 2000操作系统,为创建具有高度可管理性的、能迅速投入市场的应用程序提供了坚实基础。它们利用的是可扩展标记语言(XML),因此随着Web体系结构的革新,在此平台上创建的程序依然很有价值。 .NET平台的核心是,采用有效的、分门别类的方式来构建应用程序,达到其前所未有的规模。该平台上的Web服务模型指的是:企业应用程序的中心业务要素通常由本地管理,而支持它们的服务(如用户认证、文件存储、用户首选项管理、日历、邮件等等)却无须本地管理,可以被无缝订购。为了存储用户文件和邮件,IT专业人员往往在服务器上安装新的独立磁盘冗余阵列(RAID阵列),而有
25、了.NET,他们在这一方面将会花费较少的精力,而更多地致力于怎样为公司增加效益。 该Web服务模型还将动态配置新软件的发布和更新。用户将以极其紧密的连接方式工作,因此更易于管理。而简化的管理又可使IT专业人员更能适应变幻莫测的业务需求。 开发应用程序的.NET Web服务模型将为企业应用程序的创建开辟一条新路。通过企业内外多种服务的联合,很容易把企业内部数据和客户及合作伙伴的相关数据结合在一起,大大简化了应用程序的创建过程。这就为最终用户发掘了空前的功能涵盖性。例如,利用某公司的雇员福利程序,可以从其HR数据库订购信息,通过Web订购福利管理公司的服务、订购工资管理公司的服务。终端用户可以在简
26、单、直观的界面下操作,而这个界面可以显示他们的累积休假时间、个人所得福利以及上次工资额。运行语言(runtime)调入并运行用任何运行感知编程语言所写的代码。以运行为目标的代码被称为受控(managed)代码,受控代码代码只是意味着在内部可执行代码与运行自身间存在已定义好的合作契约。对于象生成对象、调用方法等这样的任务,被委托给了运行语言,这使得在运行语言能为可执行代码增加额外的服务。 类型系统的主要设计目的是使多种语言能深度集成。用一种语言所写的代码能继承用另一种语言所写的类的实现,用一种语言所写的代码抛出的异常能被用另一种语言写的代码捕获,象调试和剖析之类的操作会在完全封闭下工作,而不用考
27、虑代码所用的语言。这就意味着编写可重用类库的开发者,不再需要为每一种编程语言或编译器生成一个版本,并且使用类库的开发者不再受到为他们使用的编程语言开发的库的限制。ASP.NET 网络 服务体系架构为用ASP.NET建立网络 服务提供了一高级可编程模板。虽然建立网络服务并不需要使用网络 服务平台,但是它提供许多的优点将简化开发过程,并且它使用的编程模型对用ASP或VB工作的开发人员来说是很熟悉的。使用这个可编程模型,开发人员不需要理解HTTP、SOAP或其它任何网络服务规范。 开发人员用ASP.NET生成一个扩展名为.asmx的文件,并把此文件配制为网络应用程序的一部分,就建立起了一个网络 服务
28、。ASMX文件或者包含对在其它地方定义的受控类的引用,或者包含这个类的定义。这个类是由ASP.NET提供的WebService类所派生。公有的类方法在标记上WebMethod属性后,就会成为网络服务方法,把HTTP请求发送到ASMX文件中的URL后,这些方法就会被调用。你不必手工为你的网络服务建立一个契约。当被调用者请求时,ASP.NET检查类的元数据,以自动生成SCL文件。 客户可通过SOAP,HTTP GET 和HTTP POST提交请求。对方法和参数进行编码的约定是:对HTTP GET,将被编码为查询字符串;对HTTP POST,将被编码为表单数据。HTTP GET 和HTTP POST
29、 的机制不如SOAP有力,但是它们使得客户在访问网络服务时不必支持SOAP。ASP.NET 网络服务模型假定了一个无状态服务结构。无状态结构通常比有状态结构更具可扩展性。每次收到一个服务请求后,就生成一个新对象,请求被转化为一个方法调用,当方法调用返回时对象被销毁。如果这些服务需要跨请求维护状态,那么它们将使用ASP.NET状态管理服务。基于ASP.NET的网络服务在网络应用程序模型中运行,因此它们得到了该模型的所有安全、配制和其它优点。 ASP.NET 网络服务还提供了一个为在SCL文件中描述的网络服务生成分类的受控代理工具。代理生成器把SCL文件中描述的消息映射成受控类中的方法。代理对应用
30、程序代码隐藏了所有的网络和引导设备,因此使用网络服务看起来就象使用其它受控代码一样。代理将优先使用SOAP链接网络服务,但是它同样支持HTTP GET和 HTTP POST机制。因此HTTP GET和 HTTP POST同样也能被使用。 网络服务为在Internet上绑定应用程序提供了一个利用现存体系架构和应用程序的简单的、灵活的、基于许多标准的模型。网络应用程序很容易与当地开发的服务或已存在的服务集成在一起,而不用考虑开发平台、开发语言或使用的对象模型,以用于实现任何组成的服务或应用程序。 Microsft .NET框架在现有开发人员技巧之上,提供了一个应用程序模板和关键技术,用于简化安全、
31、可靠、可扩展、高可用性的网络服务的建立、部署和不断的发展。 通过上面的介绍,我们能够感觉到MicroSoft .NET对于我们今后的程序设计将产生巨大的影响1。ASP.NET前台页面是采用DHTML,即动态HTML。由于当今很多企业级系统采用B/S架构开发,相当多的页面内容要和数据库打交道,单纯依靠HTML和JavaScript已经无法实现,必须采用新的技术这就是动态HTML。所谓动态HTML(Dynamic HTML,简称DHTML),其实并不是一门新的语言,它只是HTML、CSS和客户端脚本的一种集成。DHTML建立在原有技术的基础上,可分为三个方面:一是HTML,也就是页面中的各种页面元
32、素对象,它们是被动态操纵的内容; 二是CSS,CSS属性也是动态操纵的内容,从而获得动态的格式效果; 三是客户端脚本(例如JavaScript),它实际操纵Web页上的HTML和CSS。 使用DHTML技术,可使网页设计者创建出能够与用户交互并包含动态内容的页面。实际上,DHTML使网页设计者可以动态操纵网页上的所有元素甚至是在这些页面被装载以后。利用DHTML,网页设计者可以动态地隐藏或显示内容、修改样式定义、激活元素以及为元素定位。DHTML还可使网页设计者在网页上显示外部信息,方法是将元素捆绑到外部数据源(如文件和数据库)上。所有这些功能均可用浏览器完成而无需请求Web服务器,同时也无需
33、重新装载网页。这是因为一切功能都包含在HTML文件中,随着对网页的请求而一次性下载到浏览器端。可见,DHTML技术是一种非常实用的网页设计技术2。2.3 SQL SERVER2005数据库支持该BLOG采用SQL Server2005作为数据库, SQL Server2005的10个最重要的特点。NET框架主机 使用SQL Server2005,开发人员通过使用相似的语言,例如微软的VisualC#.NET和微软的VisualBasic,将能够创立数据库对象。开发人员还将能够建立两个新的对象用户定义的类和集合。 XML技术 在使用本地网络和互联网的情况下,在不同应用软件之间散步数据的时候,可扩
34、展标记语言(XML)是一个重要的标准。SQL Server2005将会自身支持存储和查询可扩展标记语言文件。 ADO.NET2.0版本 从对SQL类的新的支持,到多活动结果集(MARS),SQL Server2005中的ADO.NET将推动数据集的存取和操纵,实现更大的可升级性和灵活性。 增强的安全性 SQL Server2005中的新安全模式将用户和对象分开,提供fine- grainaccess存取、并允许对数据存取进行更大的控制。另外,所有系统表格将作为视图得到实施,对数据库系统对象进行了更大程度的控制。 Transact-SQL的增强性能 SQL Server2005为开发可升级的数据
35、库应用软件,提供了新的语言功能。这些增强的性能包括处理错误、递归查询功能、关系运算符PIVOT,APPLY, ROW_NUMBER和其他数据列排行功能,等等。 Web服务 使用SQL Server2005,开发人员将能够在数据库层开发Web服务,将SQL Server当作一个超文本传输协议(HTTP)侦听器,并且为网络服务中心应用软件提供一个新型的数据存取功能。 报表服务 利用SQL Server2005,报表服务可以提供报表控制,可以通过VisualStudio2005发行。 全文搜索功能的增强 SQL Server2005将支持丰富的全文应用软件。服务器的编目功能将得到增强,对编目的对象提
36、供更大的灵活性。查询性能和可升级性将大幅得到改进,同时新的管理工具将为有关全文功能的运行,提供更深入的了解3。微软整合SQL Server 2005与Visual Studio 2005倒不是顶新鲜的创举,Oracle早在2004年年底即率先针对Visual Studio 2003,推出Oracle Developer Tools for Visual Studio .NET,用意在提供.NET平台的Oracle用户,整合于Visual Studio的数据库设计与管理工具,甚至可利用.NET开发Stored Procedure(预存程序)。相信Oracle在不久的将来,也会针对.NET Fra
37、mework 2.0推出更新的开发版本。 Stored Procedure效率佳,但与厂商紧密捆绑 站在程序开发者的立场,数据库与商业逻辑分开,数据库纯粹储存数据,程序开发交由应用程序处理比较单纯;但从DBA的角度出发,系统归系统,数据的处理由数据库负责比较好。虽然两者看法分岐,不过,Stored Procedure贴近数据库引擎,执行效能较佳,况且数据确实有预先处理的需求,透过程序远程处理不仅耗时,而且有网络断线造成执行失败的风险,因此,实务上Stored Procedure有存在的必要性。 Stored Procedure有以下的好处: 1.模块化的程序撰写:只需建立一次Stored Pr
38、ocedure,储存在数据库中,就可以让不同的程序呼叫。 2.执行效率佳:如果需要大量或反复执行的数据处理,Stored Procedure的执行速度会比T-SQL程序代码的批处理快。因为 Stored Procedure 是在建立的时候进行剖析和最佳化,所以执行一次以后存在内存中。而程序代码则是每次执行时都要反复地从客户端传到服务器。 3.减少网络流量:即使是好几百行T-SQL程序代码的作业,也只要透过一个指令就可以执行Stored Procedure中的程序代码,而不必在网络上传送几百行程序代码。 虽然微软的T-SQL或Oracle的PL/SQL,都兼容于ANSI-SQL,但毕竟不是标准,
39、两者都是厂商专属的数据库程序语言,所以,只要选择撰写Stored Procedure,就是紧密捆绑的开始。不过,除非有不堪使用的重大理由,否则企业选定应用程序搭配的数据库,少有更换的情况,所以效能与捆绑的衡量,是视应用而定。 以T-SQL或.NET开发Stored Procedure各有利弊 单就SQL Server而言,Visual Studio 2005与SQL Server 2005整合,明显的好处在于开发数据库程序,例如Stored Procedure或Trigger可以纳管。过去,Stored Procedure必须部署到数据库执行看看,才知道有没有问 题,而且Stored Proc
40、edure就像一般程序,档案可能被别人修改或不小心被覆盖,因此有管理的需要。透过Visual Studio的控管,对于SQL Server的管理确有正面的效果。 如果企业采用T-SQL撰写Stored Procedure,SQL Server 2005已附赠一套精简版的Visual Studio,DBA不再需要使用阳春的文字编辑器撰写Stored Procedure,可享有开发、测试及版本管理的好处。 若搭配Visual Studio 2005,可使用C#和Visual Basic撰写Stored Procedure。事实上,利用通用性程序语言撰写Stored Procedure,微软不是原创
41、,Java的SQLJ也是对等的设计。 SQL Server 2005的核心已由.NET Framework 2.0改写,因此,以Visual Basic或C#开发的Stored Procedure好处包括: 1.编译成为DLL(.NET Managed code Assembly)的Stored Procedure档案,执行在原生的.NET Framework 2.0平台,预估效能会比T-SQL好,尤其是大量循环和字符串处理的应用。 2.由于T-SQL是特定用途的程序语言,无法表达复杂的逻辑,所以即使是简单的字符串处理或数字计算,可能就要写数十行的程序表达;改由通用性用途的C#或Visual
42、Basic可以大幅缩短程序的长度,也就增加程序的可维护性。 3.相较于T-SQL是SQL Server专属语言,.NET是ISO标准。 缺点一言以蔽之,却很关键:企业可能必须有长期保存Visual Studio各种版本的心理准备。 长远看来,数据库与开发工具的生命周期大不相同,数据库首重稳定与安全,升级的频率不像开发工具那么赶流行,未来可能.NET Framework和Visual Studio都更新了好几个版本,企业的SQL Server还在2005版,而Visual Studio不像JBuilder一样有切换JDK版本的功能。因此,DBA的计算机不管改朝换代了几次,都必须装有Visual
43、Studio 2005,甚至随数据库版本的多元化,必须装有Visual Studio不同版本,而且光盘也不能丢掉。那么情况可能就像现在计算机必须安装着VB 6甚至VB 3一样诡异。至于选T-SQL或.NET的权衡,可能又需视Stored Procedure的应用层面来决定。 升级SQL Server 2005才能享有整合的好处。 数据库的工具整合于开发环境,除了便利性,更重要的是数据库的程序开发,终于有了管理工具。过去Stored Procedure丢上去Try看看的作法,现在有了测试和版本控管的机制,由此看来,两者确实有相互抬轿、彼此绑桩的效果。 不过,Stored Procedure到底是
44、延用T-SQL,还是改采功能强大、可以处理复杂逻辑的Visual Basic和C#撰写,就有很多层面的考虑。况且,企业既有的SQL Server是否升级到2005版又有很多影响因素,又将陷入一段长考。3 需求分析3.1研究设计中要解决的问题3.1.1 市场需求随着全球信息网络的发展,Internet在世界上已不仅仅是一种技术,更重要的是它已成为一种新的经营模式。从4C(Connection.,Communication ,Commerce ,Co-operation)层次上彻底改变了人类工作,学习,生活,娱乐的方式,已成为国家经济和区域经济增长的主要动力。Internet正成为世界最大的公共资
45、料信息库,它包含无数的信息资源,所有最新的信息都可以通过网络搜索获得。我们所要达到的目标和期望是能使用户能够通过网络尽情表达自己的思想,或者说技术,博客在满足客户使用的同时也可以满足广告业务的发展,针对不同类别的博客而开启的广告内容将有效地加强广告的宣传效果。3.1.2功能分析本博客使用Visual Studio 2005和Microsoft SQL Server2005 来实现,其中包括浏览BLOG和BLOG管理系统两大部分,第一部分又分文章类别分类,文章分类,菜单导航,评论,评论加载,RSS,第二部分的管理中,用户可以对自己的信息进行修改,密码修改,文章内容修改,文章添加,当中可以进行图片
46、信息的录入。3.1.3性能分析(1)响应时间:一般操作的响应时间在0.1-3秒内(在硬件配置较高的情况下)(2)运行时间:0.1-3秒内(在硬件配置较高的情况下)(3)错误处理,在调试的时候加断点,用立即窗口进行调试或用Debug.Print输出到立即窗口。程序的错误处理,如果没有良好的错误处理,可能导致程序致辞命错误而退出!我们需要错误处理的过程中加入on error 语句进行错误处理。也可以写一个全局的错误处理模块! 另外当我们的页面被请求时,一旦请求出错,将调用系统中指定的报错页面,告诉用户出错信息。3.1.4 系统功能图通过对BLOG需求的了解以及对其具体功能的分析,实现该博客的总体功
47、能图和各模块功能图的设计,如下:Home博客首页EssayArticleWorksCoursePhotosAboutContackManageBlog修改密码修改文章添加文章用户登陆图3-1 博客整体框架左侧菜单导航NewsNavigationLinksMy GainedSite Info图3-2 页面左侧菜单导航文章显示文章标题文章发表时间及浏览次数正文评论浏览添加评论图3-3 文章显示结构用户文章管理titlepubtimeallowshowallowcommentcommentsviews文章管理removeedit图3-4 用户对文章的管理添加文章文章类型文章来源文章标题文章简介文章正文权限选择提交图3-5 添加文章3.2具体实现中采用的关键技术及复杂性分析3.2.1系统结构该博客采用三层结构,将数据逻辑操作与业务逻辑独立开来,使系统层次清晰。分别建立DataFormater类,DataHelper类, DataProvider类 ,DbFormater类,DbProvider类,IDbFormater类,IDbProvider类, SQLHelper类,用来处理数理逻辑。因为每一层都可以在仅仅更改很少量的代码后,就能放到物理上不同的服务器上使用,因此结构灵活而且性能更佳。此外,每层做些什么其它层是完全看不到的,