欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    基于.NET的新闻发布系统毕业论文.doc

    • 资源ID:3937930       资源大小:1.57MB        全文页数:63页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于.NET的新闻发布系统毕业论文.doc

    郑州大学西亚斯国际学院本科毕业论文(设计)题 目 基于.NET的新闻发布系统-前台显示指导教师 _吉星_职称_讲师_学生姓名 宋世明 学号 20061102126专 业 信息管理与信息系统班 级 2006级FH信息管理与信息系统1班院 (系) 国际教育学院完成时间 2010年5月3日基于.NET的新闻发布系统-前台显示摘要 ASP.NET不仅仅是下一版本的ASP(Active Server Pages,动态服务器页面),而且是建立动态Web应用程序而重新打造的全新技术,它是一个已编译的、基于.NET的开发环境。它提供了生成企业级应用程序所必需的全部服务,基于 .NET Framework 生成,整个框架都可用于任何 ASP.NET 应用程序,可以使用任何与公共语言运行库(CLR)兼容的语言(包括 Visual Basic.NET、C# 和 JScript .NET)来创建应用程序。该系统使用ASP.NET(C#语言)和ADO.NET技术开发, 实现了网站新闻的动态管理,管理员不必关掉网络服务器或者甚至不用停止应用程序的运行就可以更新应用文件,使得对信息的管理更加及时、高效,提高了工作效率。该系统具有一般新闻系统的功能,主要包括前台新闻查看区、后台管理区以及访客留言板系统,可为学校各部门发布新闻,为校园网站提供新闻发布与管理的服务。关键词 ASP.NET ADO.NET 新闻管理 Browser/ServerNEWS BRIEFING SYSTEM BASED ON .NET-ONATAGE DEMONSTRATIONAbstractASP.NET is not only the next generation of Active Server Pages, but also the new technology to develop dynamic Web application program. It is one that has already compiled, development environment based on .NET. It has offered and produced all essential services of application program of enterprise layer, produce because of .NET Framework, the whole frame can be used in any ASP.NET application program. ASP.NET can use any to operate the compatible language (including Visual Basic.NET , C# and JScript .NET ) of storehouse (CLR ) to establish application program with common language . This news system uses ASP.NET (C#) and ADO.NET technological development, has realized the dynamic management of website's news, and administrators do not have to turn off the network server, or do not even have to stop running the application can update the application files. It makes the control over information more prompt , more high-efficient , and it has improved working efficiency. This news system has general news function of system, mainly including front desk news person who look over, back-stage management area and guestbook system, can release news for every department of the school , offer news briefing and management one service for campus website. Keywords ASP.NET ADO.NET News Management Browser/Server目 录中文摘要I英文摘要II1.引言12.研究背景22.1 国内外研究现状及发展趋势22.2 研究目的、意义和范围33 课题分析43.1 需求分析43.2 运行环境要求64 主要技术的介绍84.1 C#简介84.1.1 C#概述84.1.2 用C#能编写什么样的程序94.2 什么是.NET Framework104.2.1 .NET Framework概述104.2.2 使用.NET Framework进行应用程序开发144.3 ASP.NET简介184.3.1 ASP.NET 概述184.3.2 ASP.NET组成部分解析204.4 Visual Studio简介234.4.1 Visual Studio功能234.4.2 Visual Studio主要部分234.5 ADO.NET概述244.6 VB.Net概述265 系统结构流程275.1 新闻系统的模型结构275.2 新闻系统的功能模块简介275.3 前台显示模块306 新闻系统的主要开发过程316.1 数据库设计316.2各主要窗体页的图形界面介绍326.3 页面的风格设计356.4 系统部分重要功能及其代码366.4.1 Web用户控件366.4.2 通用类代码366.4.3 添加发布新闻387 前台显示模块的实现407.1 前台显示模块实现的主要功能407.2各主要功能的技术实现及主要代码417.2.1 用户注册、登录的实现417.2.2 搜索新闻功能的实现437.2.3 显示最热门、最新的的前几条新闻的实现447.2.4 滚动图片新闻的实现457.2.5 显示所有新闻分类的实现477.2.6 按分类/部门显示其下的所有新闻487.2.7 新闻详细信息的浏览阅读497.2.8 其他部分功能的实现518 系统配置548.1 Web.config文件配置548.2 配置发布主页549 总结55致 谢56参考文献571.引言信息高速公路是一种高速多媒体传输系统,它能在全球甚至更大的范围内传输声像图文并茂的多媒体信息。由美国首先提出的“信息高速公路”是指数字化大容量光纤通信网络,用以把政府机构、企业、大学、科研机构和家庭的计算机联网。一些国家和公司还提出利用卫星架设“空中信息高速公路”的设想(北京科普之窗,2000)。这一时代的到来使得新闻在网络中传输成为可能。今天上网看新闻已经是人们日常生活的一部分,快速及时的浏览新闻,能拓展人们的生活视野。因此越来越多的企事业单位都很重事新闻网站的建设。使用新一代的ASP.NET技术来组建的新闻发布系统更表现出其强大的优越性。ASP.NET是微软公司最新推出的一种统一Web开发平台,与最新的数据访问技术ADO.NET一起可构建出强大、安全和可靠的企业级Web应用程序。它是一种使嵌入网页中的脚本可由因特网服务器执行的服务器端脚本技术, 指 Active Server Pages(动态服务器页面),运行于 IIS 之中的程序1。ASP.NET的语法在很大程度上与ASP兼容,同时它还提供一种新的编程模型和结构,用于生成更安全、可伸缩和稳定的应用程序。ASP.NET 可以无缝地与 WYSIWYG HTML 编辑器和其他编程工具(包括 Microsoft Visual Studio .NET)一起工作。这不仅使得 Web 开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到 Web 页的 GUI 和完全集成的调试支持。 当创建 ASP.NET 应用程序时,开发人员可以使用 Web 窗体或 XML Web services,或以他们认为合适的任何方式进行组合。每个功能都能得到同一结构的支持,使您能够使用身份验证方案,缓存经常使用的数据,或者对应用程序的配置进行自定义.2研究背景2.1 国内外研究现状及发展趋势 目前,新闻发布系统的技术已经十分成熟,用到的技术很多,比如说ASP技术,PHP技术,JSP技术,.NET技术等,成熟的新闻发布系统有很多,比如著名的V7 Content Management Suite(西门子公司采用的系统),Interwoven-Teamsite(Cisco 采用的系统),以及开源的产品也得到广泛的应用,如OpenCMS, Zope-Content Management Framework等 传统的网站新闻管理方式有两种23:一种是静态HTML页面,更新信息时需要重新制作页面然后上传页面并修改相应链接,这种方式因为效率太低已不多用;另一种是基于ASP和脚本语言,将动态网页和数据库结合,通过应用程序来处理新闻,这是目前较为流行的做法。但是由于ASP技术本身的局限性使得系统有一些不可克服的缺陷。ASP.NET不仅仅是下一版本的ASP(Active Server Pages,动态服务器页面),而且是建立动态Web应用程序而重新打造的全新技术4,其主要特色包括:u 语言的独立性;u 简单的开发操作,分离程序代码和网页内容;u 提高了执行效率;u 简化部署与组态的操作;u 支持客户端类型;u 支持下一代的Web服务;u 增进适用性;u 增进延展性;u 更多的支持工具;u 更佳的安全机制;u 会话(Session)可以跨进程、跨机器。由于ASP.NET的众多优点,技术发展和各种客观实际的需要,该系统选用了ASP.NET来开发设计,实现了对校园新闻的动态管理操作,使得对新闻信息的发布与管理更加及时、高效,提高了工作效率。2.2 研究目的、意义和范围随着Internet的普及,越来越多的企业建立了自己的WWW网站,企业通过网站可以展示产品,发布最新动态信息,与用户进行交流和沟通,与合作伙伴建立联系,以及开展电子商务等。其中新闻管理系统是构成企业网站的一个重要组成部分,它担负着双层作用:一方面可以用来动态发布有关新产品或新开发项目;另一方面又可以及时向顾客公告企业经营业绩、技术与研发进展、特别推荐或优惠的工程项目、产品和服务,从而吸引顾客,扩大顾客群。该系统使用ASP.NET(C#语言)和ADO.NET技术开发, 实现了网站新闻的动态管理,使得对信息的管理更加及时、高效,提高了工作效率。该新闻系统具有一般新闻系统的功能,主要包括前台新闻查看区和后台管理区,可为学校各部门发布新闻,为校园网站提供新闻发布与管理的服务。该系统是基于B/S(Browser/Server,浏览器/客户端)模式实现,基于.NET平台架构开发设计,主要实现对校园新闻的发布与管理功能,对新闻内容信息的浏览阅读等。随着Internet/Intranet技术的兴起,将原本在单机或本地局域网上运行的数据库系统移植到因特网中,即开发基于B/S模式的新一代MIS(Management Information System,管理信息系统)系统,正成为技术发展的趋势。为了保证系统性能的高效性、可扩展性,以及达到数据共享和网络化管理的目的,本系统采用B/S体系结构进行设计开发。3 课题分析3.1 需求分析该系统的用户为校园网站,需要经常发布一些新闻,如何能有效地管理和发布新闻呢?最初用户的需求为:“该新闻系统具有一般新闻系统的功能,同时具有新闻审核和不同管理员不同管理权限的功能”。通过对其它一些新闻系统的调查发现,一般新闻系统功能如下: 前台按分类显示新闻(主要是实现新闻的浏览、对新闻进行评论、用户注册等功能); 搜索新闻; 后台管理:l 添加、删除和修改新闻l 添加、删除和修改用户l 添加、删除和修改新闻分类l 添加新闻(添加成功后的新闻根据管理员权限分为可发布新闻和待审核新闻)需要新闻审核,说明添加后的新闻分为两种:直接发布新闻和待审核新闻,同时待审核的新闻通过管理员或审核员经审核后才可以上传到网站,管理员有不同的权限,需要有个管理权限的功能,在系统中应该有个超级管理员,具有所有权限,能够对系统进行全面管理,同时管理员可以修改自己的一些信息。通过对现实的调查与研究,获知在该系统中需确立查看新闻、管理新闻和留言板三大功能模块,具体内容如下:在首页中能显示用户注册、新闻分类、最热门新闻、头条新闻和最新新闻、图片新闻等,同时在后台发布新闻时可以添加图片,也可以添加HTML语法,在前台能自动根据所显示的图片和HTML语法来显示新闻。在后台管理中,因为有权限的管理员才能登录管理后台,所以需要有个登录验证模块,而且需要根据用户权限的不同显示不同的管理目录,在管理新闻和用户时,当数据少时管理起来还比较方便,如果一多则想找到某条新闻或某个用户就很难,所以需要有个查找(新闻标题、用户)模块用于查找新闻或用户。在留言板部分中,用户可以发表留言,管理员的登陆操作、回复留言和删除留言,以及一些其他特色功能。根据以上需求分析,该系统要实现的主要功能为: 前台显示新闻部分l 用户登录区l 显示最热门的前几条新闻l 显示推荐的前几条新闻l 搜索新闻功能l 显示所有新闻分类(即部门)l 按分类/部门显示其下的所有新闻l 新闻详细信息浏览阅读l 图片新闻(自动生成缩略图)以滚动形式在首页显示且只显示前几条l 网站友情链接(可在管理中添加设置)l 网站公告可显示发布了新闻但没通过审核的一些相关通知等 后台管理部分l 登录验证l 根据权限显示相应的管理目录l 添加、修改和删除新闻l 管理发布新闻l 管理审核新闻l 分类管理l 用户管理l 网站风格设置、系统设置等 留言板部分l 用户可以浏览过往的留言l 用户可以发表留言l 用户留言信息出错提示l 用户设置自己的相关信息l 网站管理人员输入密码进行登录l 网站管理人员对留言进行恢复或者删除l 网站管理人员对网站的系统、样式进行设置l 系统可以判别用户的信息,并给出错误提示l 系统登录验证l 系统可以判别留言者的IP地址,并显示在该留言旁边该系统在性能功能上应达到如下需求: 操作简单、界面友好: 完全控件式的页面布局,使得新闻的录入工作更简便,许多选项包括新闻分类、来源部门等只需要点击鼠标就可以完成;另外,跟踪出现的提示信息也让用户随时清楚自己的操作情况。对常见网站的新闻管理的各个方面:新闻录入、浏览、删除、修改、搜索等方面都大体实现,实现了网站对即时新闻的管理要求; 即时可见:对新闻的处理(包括录入、修改、删除)将立即在主页的对应栏目显示出来,达到“即时发布、即时见效”的功能; 系统运行应该快速、稳定、高效和可靠; 在结构上应具有很好的可扩展性,便于将来的功能扩展和维护。3.2 运行环境要求 设备要求:客户机硬件要求5:具有 Pentium III 处理器以上且满足以下要求的计算机:最低 64 MB 内存,最小 2.1 GB 硬盘。服务器硬件要求:具有 Pentium III 处理器以上且满足以下要求的计算机:最低 256MB 内存,最小 8 GB 硬盘。支持程序6: 客户端l 操作系统:Windows 98/NT/2000/XP或更高版本l 浏览器:IE 5.0以上或Netscape同等版本以上 服务器l 操作系统:Windows 2000 Server或者Windows 2003 Serverl Web服务器:MS IISl 应用服务器:IIS、COM+等企业级应用服务器l 数据库:ACCESS 4 主要技术的介绍4.1 C#简介4.1.1什么是C#C#是从C和C+语言演化而来,是Microsoft专门为使用.NET平台而创建的。因为C#是近期发展起来的,所有吸取了以前的教训,考虑了其他语言的许多优点,并解决了他们的问题7。lC#是一种安全的、稳定的、简单的、优雅的语言。它在继承C和C+强大功能的同时去掉了一些它们的复杂特性(例如没有宏和模版,不允许多重继承)。C#综合了VB简单的可视化操作和C+的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持成为.NET开发的首选语言。并且C#成为ECMA与ISO标准规范。C#看似基于C+写成,但又融入其它语言如Delphi、Java、VB等。使用C开发应用程序比使用C+简单。但是,C#是一种强大的语言,在C+中能完成的任务利用C+也能完成。C#中与C+比较高级的功能等价的功能(例如直接访问和处理系统内存),只能在标记为“不安全”的代码中使用。这个高级编程技术是非常危险的(正如它的名称),因为它可能覆盖系统中重要的内存块,导致严重的后果。C#代码常常比C+略长一些。这是因为C#是一种类型安全的语言(与C+不同)。在外行人看来,这表示一旦为某些数据指定了类型,就不能转换为另一个不相关的类型。所以,在类型之间转换时,必须严格遵守规则。执行相同的任务时,用C#编写的代码通常比C+长。但C#代码更健壮,调试也比较方便,.NET总是可以随时跟踪数据的类型。在C#中,不不能完成诸如“把4个字节的内存放在这个数据中,使之有10个字节长,并把它解释为X”等任务,但这并不是一件坏事。C#从C和C+中继承了:编译、结构体、预编译、操作符重载的的特点,其本身又有自己独有的特点8:u 中间代码u 命名空间中的申明u 两个基本类u 基本的数据类型 u 参数传递 u 与COM的集成 u 索引下标 u 代理和反馈C#只是.NET开发的一种语言,但它比其它语言更优越,它是唯一为.NET Framework设计的语言,是在一直到其它操作系统上的.NET版本中使用的主要语言。要使语言如VB.NET尽可能类似于以前的语言,且仍遵守CLR,就不能完全支持.NET代码库的某些功能。但C#能使用.NET Framework代码库提供的每种功能。.NET的最新版本还对C#语言进行了几处改进,这是为了满足开发人员的要求,使之更强大。4.1.1用C#能编写什么样的程序如前所述,.NET Framework没有限制应用程序的类型。C#使用.NET Framework,所以也没有现在应用程序的类型。这里仅讨论几种常见的应用程序类型7。u Windows应用程序 这些应用程序如Microsoft Office,有我们很熟悉的Windows外观和操作方式,使用.NET Framework的Windows Forms 模块就可以生产这种应用程序。Windows Forms模块是一个控件库,其中的控件(例如按钮、工具栏、菜单等)可以用于建立Windows用户界面(UI)。u Web应用程序这些事Web页,可以通过任何Web浏览器查看。.NET Framework包括一个动态生产Web内容的强大系统,允许个性化、实现安全性等。这个系统叫做Active Server Pages.NET(ASP.NET),我们可以使用C#通过Web Forms创建ASP.ENT应用程序。u Web服务这是创建各种分布式应用程序的新方式,使用Web服务可以通过Internet虚拟交换数据。无论使用什么语言创建Web服务,也无论Web服务驻留在什么系统上,都使用一样简单的语法。 这些类型也需要某种形式的数据库访问,这可以通过.NET Framework的Active Data Objects.NET(ADO.ENT)部分来实现。也可以使用许多其他的资源,例如创建联网组件、输出图形、执行复杂数学任务的工具。4.2 .什么是.NET Framework4.2.1.NET Framework概述 .NET Framework 是用于 .NET 平台的编程模型,其关键组件是公共语言运行库(CLR,Common Language Runtime)和 .NET Framework 类库(包括 ADO.NET、ASP.NET 和 Windows 窗体),它提供了托管执行环境、简化的开发和部署以及与各种编程语言的集成,是支持生成和运行下一代应用程序和 XML Web services 的内部 Windows 组件。.NET Framework 旨在实现下列目标9:u 提供一个一致的面向对象的编程环境,而无论对象代码是在本地存储和执行,还是在本地执行但在 Internet 上分布,或者是在远程执行的;u 提供一个将软件部署和版本控制冲突最小化的代码执行环境;u 提供一个可提高代码(包括由未知的或不完全受信任的第三方创建的代码)执行安全性的代码执行环境;u 提供一个可消除脚本环境或解释环境的性能问题的代码执行环境;u 使开发人员的经验在面对类型大不相同的应用程序(如基于 Windows 的应用程序和基于 Web 的应用程序)时保持一致;u 按照工业标准生成所有通信,以确保基于 .NET Framework 的代码可与任何其他代码集成。.NET Framework 具有两个主要组件10:公共语言运行库和 .NET Framework 类库。公共语言运行库是 .NET Framework 的基础。用户可以将运行库看作一个在执行时管理代码的代理,它提供内存管理、线程管理和远程处理等核心服务,并且还强制实施严格的类型安全以及可提高安全性和可靠性的其他形式的代码准确性。事实上,代码管理的概念是运行库的基本原则。以运行库为目标的代码称为托管代码,而不以运行库为目标的代码称为非托管代码。.NET Framework 的另一个主要组件是类库,它是一个综合性的面向对象的可重用类型集合,用户可以使用它开发多种应用程序,这些应用程序包括传统的命令行或图形用户界面 (GUI) 应用程序,也包括基于 ASP.NET 所提供的最新创新的应用程序(如 Web 窗体和 XML Web Services)。.NET Framework 可由非托管组件承载,这些组件将公共语言运行库加载到它们的进程中并启动托管代码的执行,从而创建一个可以同时利用托管和非托管功能的软件环境。.NET Framework 不但提供若干个运行库宿主,而且还支持第三方运行库宿主的开发。例如,ASP.NET 承载运行库以为托管代码提供可伸缩的服务器端环境。ASP.NET 直接使用运行库以启用 ASP.NET 应用程序和 XML Web Services。Internet Explorer 是承载运行库(以 MIME 类型扩展的形式)的非托管应用程序的一个示例。使用 Internet Explorer 承载运行库使用户能够在 HTML 文档中嵌入托管组件或 Windows 窗体控件。以这种方式承载运行库使得托管移动代码(类似于 Microsoft® ActiveX® 控件)成为可能,不过它需要进行重大改进(如不完全受信任的执行和独立的文件存储),而这种改进只有托管代码才能提供。下面的插图4-1显示了公共语言运行库和类库与应用程序之间以及与整个系统之间的关系。该插图还显示托管代码如何在更大的结构内运行。图4-1公共语言运行库和类库与应用程序之间以及与整个系统关系图下面简单的介绍一下公共语言运行库和 .NET Framework 类库。公共语言运行库是管理内存、线程执行、代码执行、代码安全验证、编译以及其他系统服务。这些功能是在公共语言运行库上运行的托管代码所固有的。至于安全性,取决于包括托管组件的来源(如 Internet、企业网络或本地计算机)在内的一些因素,托管组件被赋予不同程度的信任。这意味着即使用在同一活动应用程序中,托管组件既可能能够执行文件访问操作、注册表访问操作或其他须小心使用的功能,也可能不能够执行这些功能。运行库强制实施代码访问安全。例如,用户可以相信嵌入在网页中的可执行文件能够在屏幕上播放动画或唱歌,但不能访问他们的个人数据、文件系统或网络。这样,运行库的安全性功能就使通过 Internet 部署的合法软件能够具有特别丰富的功能。运行库还通过实现称为通用类型系统 (CTS) 的严格类型验证和代码验证基础结构来加强代码可靠性。CTS 确保所有托管代码都是可以自我描述的。各种 Microsoft 和第三方语言编译器生成符合 CTS 的托管代码。这意味着托管代码可在严格实施类型保真和类型安全的同时使用其他托管类型和实例。此外,运行库的托管环境还消除了许多常见的软件问题。例如,运行库自动处理对象布局并管理对对象的引用,在不再使用它们时将它们释放。这种自动内存管理解决了两个最常见的应用程序错误:内存泄漏和无效内存引用。运行库还提高了开发人员的工作效率。例如,程序员可以用他们选择的开发语言编写应用程序,却仍能充分利用其他开发人员用其他语言编写的运行库、类库和组件。任何选择以运行库为目标的编译器供应商都可以这样做。以 .NET Framework 为目标的语言编译器使得用该语言编写的现有代码可以使用 .NET Framework 的功能,这大大减轻了现有应用程序的迁移过程的工作负担。尽管运行库是为未来的软件设计的,但是它也支持现在和以前的软件。托管和非托管代码之间的互操作性使开发人员能够继续使用所需的 COM 组件和 DLL。运行库旨在增强性能。尽管公共语言运行库提供许多标准运行库服务,但是它从不解释托管代码。一种称为实时 (JIT) 编译的功能使所有托管代码能够以它在其上执行的系统的本机语言运行。同时,内存管理器排除了出现零碎内存的可能性,并增大了内存引用区域以进一步提高性能。最后,运行库可由高性能的服务器端应用程序(如 Microsoft® SQL Server 和 Internet 信息服务 (IIS))承载。此基础结构使用户在享受支持运行库宿主的行业最佳企业服务器的优越性能的同时,能够使用托管代码编写业务逻辑。.NET Framework 类库是一个与公共语言运行库紧密集成的可重用的类型集合。该类库是面向对象的,并提供用户自己的托管代码可从中导出功能的类型。这不但使 .NET Framework 类型易于使用,而且还减少了学习 .NET Framework 的新功能所需要的时间。此外,第三方组件可与 .NET Framework 中的类无缝集成。例如,.NET Framework 集合类实现一组可用于开发用户自己的集合类的接口。用户的集合类将与 .NET Framework 中的类无缝地混合。正如用户对面向对象的类库所希望的那样,.NET Framework 类型使用户能够完成一系列常见编程任务(包括诸如字符串管理、数据收集、数据库连接以及文件访问等任务)。除这些常见任务之外,类库还包括支持多种专用开发方案的类型11。例如,可使用 .NET Framework 开发下列类型的应用程序和服务: u 控制台应用程序。u Windows GUI 应用程序(Windows 窗体)。u ASP.NET 应用程序。u XML Web Services。u Windows 服务。例如,Windows 窗体类是一组综合性的可重用的类型,它们大大简化了 Windows GUI 的开发。如果要编写 ASP.NET Web 窗体应用程序,可使用 Web 窗体类。4.2.2使用.NET Framework进行应用程序开发使用.NET Framework编写应用程序,就是使用.NET代码库编写代码(使用支持Framework的任何一种语言),例如Visual Studio, VS是一种强大的集成开发环境,支持C#(以及托管和非托管C+、Visual Basic和其他的一些语言)。这个环境的优点是便于把.NET功能集成到代码中。为了执行C#代码,必须把他们转换成为目标操作系统能够理解的语言,即本机代码,这种转换成为编译代码,由编译器执行。但在.NET Framework下,这个过程分为连个阶段7。1. MSIL和JIT在编译使用.NET Framework库的代码时,不是立即创建操作系统特定的本机代码,而是把代码编译为Microsoft中间语言(Microsoft Intermediate Language, MSIL)代码,这些代码不专用于任何一种操作系统,也不专用于C#。其他的.NET语言,如Visual Basic.NET也可以在第一阶段编译成为这种语言,当使用VS开发C#应用程序时,编译过程就由VS完成。显然,要执行应用程序,必须完成更多的工作,这是Just-In-Time(JIT)编译器的任务,它把MSIL编译为专用于OS和目标机器结构的本机代码。这样OS才能执行应用程序。这里编译器的名称Just-In-Time反映了MSIL尽在需要时才编译的事实。过去,常常需要把代码编译为几个应用程序,每个应用程序都用于特定的操作系统和CPU结构。这通常是一种优化形式(例如,为了让代码在AMD芯片上运行得更快),但有时候是非常重要的(例如对于工作在Win9x和WinNT/2000环境下的应用程序)。现在就不必要了,因为顾名思义,JIT编译器使用MSIL代码,而MSIL代码独立于机器、操作系统和CPU的。目前有几种JIT编译器,每种编译器都用于不同的结构,我妈总能找到一个适合的编译器创建所需要的本机代码。这样,用户需要做的工作就比较少了。实际上,可以不考虑于系统相关的细节,把注意力放在代码的功能上就够了。2程序集在编译应用程序时,所创建的MSIL代码存储在一个程序集中,程序集包括可以执行的应用程序文件(这些文件可以直接在Windows上运行,不需要其他程序,其扩展名也是.exe)和其他应用程序使用的库(其扩展名是.dll).除了包含MSIL外,程序集还包含元信息(即程序集中包含的数据信息,也成为元数据)和可选的资源(MSIL使用的其他数据,例如声音文件和图片)。元信息允许程序集是完全自我描述的。不需要其他的信息就可以使用程序集,也就是说,我们不会遇到如下情形:不能把需要的数据添加到系统注册表中,而这种情形在使用其他平台进行开发时常常出现。因此,部署应用程序就很简单了,只需要把文件复制到远程的计算机上的目录下酒可以了。因为不需要目标系统上的其他信息,所以只需要从该目录中运行可执行文件即可(假定安装了.NET CLR)。当然,不必把运行应用程序所需的所有信息都安装到一个地方。可以编写一些代码,执行多个应用程序所要求的任务。此时,通常把这些可重用的代码放在所有应用程序都可以访问的地方。在.NET Framework中,这个地方是全局程序集高速缓存(Global Assembly Cache, GAC),把代码放在这个高速缓存中很简单,只需要把包含代码的程序集放在该高速缓存的目录下即可。3托管代码在把代码编译为MSIL,再用JIT编译器把它编译为本机代码后,CLR的任务还没有全部完成。用.NET Framework编写的代码在执行(这个阶段通常称为运行时(runtime))时是托管的。即CLR管着应用程序,其方式是管理内存、处理安全性,以及允许进行跨语言调试等。相反,不在CLR控制之下的应用程序是非托管的,某些语言如C+可以用于编译写这类应用程序,例如。访问操作系统的低级功能。但是,在C#中,只能编写在托管环境下运行的代码。我妈将使用CLR的托管功能,让.ENT自己与操作系统进行交互。4. 垃圾回收托管代码最重要的一个功能是垃圾回收(garbage collection)。这种.NET方法可确保应用程序不再使用某些内存时,这内存完全释放。在NET推出以前,这项工作主要由程序员负责,代码中的几个简单错误会把大块内存分配到错误的地方,使这些内存神秘失踪。这通常意味着计算机的速度逐渐减慢,最终导致崩溃。.NET垃圾回收会频繁检查计算机内存,从中删除不需要的内容。它没有设置时间帧,可能一秒钟内会进行上千次的检查,也可能几秒钟检查一次,或者随时进行检查,但可以肯定进行了检查。这里要给程序员一些提示。因为这项工作在不可预知的时间进行,所以在设计应用程序时,必须记得要进行这样的检查。需要许多内存才能进行的代码应自己执行这样的检查,而不是坐等垃圾回收,但这不像听起来那样难。5. 把它们组合在一起在继续学习之前,先总结一下上述创建.ENT应用程序需要的步骤:首先,使用某种.ENT兼容语言(如C#)编写应用程序代码;其次,把代码编译为MSIL,存储在程序集中;再次,在执行代码时(如果这是一个可执行文件,就自动运行,或者在其他代码使用它时运行)必须使用JIT编译器将代码编译为本机代码;最后,在托管的CLR环境下运行本机代码,以及其他应用程序或过程。6. 连接在上述过程中还要有一点要注意。在上述第二步中编译为MSIL的C#代码不一定包含在单独的文件中,可以把应用程序代码放在多个源代码文件中,再把它们编译到一个程序集中。这个过程成为连接,是非常有用的。原因是处理几个较小的文件比处理一个大文件要简单的多。可以把逻辑上相关的代码分解到一个文件中,以便单独处理它,这也更易于在需要代码时找到它们,让开发小组把编程工作分解为可管理的块,让每个人编写一小块代码,而不会破坏已编写好的代码部分或其他人正在处理的部分。在托管领域中,服务器端应用程序是通过运行库宿主实现的。非托管应用程序承载公共语言运行库,后者使您的自定义托管代码可以控制服务器的行为。此模型在获得主服务器的性能和可伸缩性的同时提供给您公共语言运行库和类库的所有功能12。下面的插图4-2显示在不同服务器环境中运行托管代码的基本网络架构。在应用程序逻辑通过托管代码执行时,服务器(如 IIS 和 SQL Server)可执行标准操作。图4-2 运行托管代码的基本网络架构ASP.NET 是使开发人员能够使用 .NET Framework 开发基于 Web 的应用程序的宿主环境。但是,ASP.NET 不止是一个运行库宿主;它是使用托管代码开发网站和通过 Internet 分布的

    注意事项

    本文(基于.NET的新闻发布系统毕业论文.doc)为本站会员(仙人指路1688)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开