其编译为MSIL代码,之后进行JIT变编译,随后编译为机器语言代码最终进行执行。
6
基于Asp.Net的个人博客网站的设计与实现
2.2 C#概述
C#是一种Microsoft为了实际应用.NET而根据其特点和需要所创造的不同于以前出现过的的的编程语言。C#同.NET Framework存在密切相关的关系,C#中所包含地类型便是.NET里面所能提供地所有类,而且C#可以直接使用.NET 框架所提供地类库。此外,C#中所包含地理性的安全检查和结构化异常的处理等全部由CLR来处理。事实上,ASP.NET 3.5便是使用C#语言来进行开发的,因此C#这种编程语言不进十分适合Web应用程序的开发,而且还适合用于强大的系统程序的开发。
C#这门语言具有着如下的特点:
在.NET 框架所提供的环境中执行C#的代码的时候,无法对内存直接进行操作,从而使得程序的安全性能大大提高。C#中并不推荐使用指针,如果想要使用指针的话,需要添加unsafe修饰符才行,并且在编译的时候需要采用/unsafe这个参数。
采用C#编程语言可以构建出健康高效的应用程序。C#中的垃圾回收功能将会自动的回收那些不再被使用的对象所占用的内存。而异常处理功能则提供了结构化的并且可扩展的错误检测与恢复的方法。独有的类型安全的设计从根本上排除在读取未被初始化过的变量和未被初始化过的数组的时候导致溢出上限的可能性。
C#编程语言有着整合的类型系统。全部的C#类都继成于唯一一个根类——object。所以,全部的类型都能够共享同一组通用操作。
C#编程语言完全支持使用组件编程。现在软件设计越来越依靠有着自包含与自描述功能包形式的软件组件,通过属性,方法和时间来提供编程的模型。而C#恰恰可以轻而易举的创建并且使用这些软件组件。
通过上面的介绍,可以想象.NET Framework会是非常庞大的。它有着三千四百个的类。幸运的是,类不会简单的堆在一起。.NET Framework通过鲜明的层次结构将类组织在命名空间中。
例如在先前的ASP中,你只有五个标准类的访问,而在ASP.NET中所提供的类超过三千四百个!
命名空间是一个逻辑分组,像是,有关工作在System.IO的文件系统类型设置。 您通过完整的类的命名空间,可以唯一识别在the.NET框架位置的任何一类。 默认情况下,ASP.NET页面,在一些选定的命名空间中包含的类,在ASP.NET里普遍应用类被系统初始化。
7
基于Asp.Net的个人博客网站的设计与实现
2.3 动态网站技术介绍
鉴于博客网站系统的操作界面均为Web页面的形式,并且需要对各种用户的请求实时进行处理以及返回结果,而这些是一般的静态Web页面所无法实现的,因此需要使用动态网页技术。现在动态网页技术有很多,例如CGI、SP.NET、JSP、ASP、ASP.NET等。本设计将以ASP.NET为主要技术。
ASP.NET是ASP版本的下一代,它不仅仅是ASP Four,而是一种新的Web开发框架,包含了许多新的功能。不像ASP,ASP.NET是完全基于模块化和组件,它的可扩展性和定制是用ASP技术无法比拟的,在数据处理方面引入了许多令人振奋的新技术,为Web开发人员提供了更多的灵活性,网络是有效的改善应用程序的开发效率。 ASP技术相比,ASP.NET的进展是革命性的。 ASP.NET和Windows2005 Advanced Server的完美结合,为小型和中型企业用户和企业用户的网络商务活动提供了更好的稳定性,安全性,高效的运行环境。
2.4数据库技术
该个人博客网站所具有的存储用户信息,文章,图片,音乐等功能必然要通过数据库技术来实现。
统一的SQL Server 2005中的语言风格,可以完成这项工作的数据库活动,包括创建数据库,数字模式,改变和查询数据和整体安全的保障和数据库的维护。数据库应用系统的发展提供了一个良好的环境。即使系统在实际使用之后,用户仍旧能够根据需要来改变系统的结构,同时保证数据的正常运行,这一特点令系统有了非常优异的扩展性能。
在使用SQL语言访问数据库时,用户不需要像C语言那样具体的写出如何实现操作,而只需要写清楚要做的事情,SQL语言就可以将要求提交给数据库管理系统,然后由数据库管理系统自动全部工资。
自二十世纪八十年代以来,SQL便是DBMS这一系统所采用的规范化语言。最早的SQL标准是ANSI(American National Standards Institute)于1986年10也颁布的。ISO(国际标准化组织)于一九八七年六月正式通过了国际标准,并在此基础上补充,一九八九年四月,ISO发布有着全部功能的SQL,SQL-89。SQL-89标准的颁布,对数据库技术队发展和数据库的应用都起到了巨大的推进作用。尽管如此,SQL-89依然有相当多不足之处。因此,SQL-89的基础上,研究和修订3年以上后,国际标准化组织与ANSI于1992年8月颁布了新的标准
8
——SQL-92 亦或是SQL2。值得注意的是它依然没有很全面,因此于一九九九年有颁布了SQL-99或叫做SQL3。
SQL语言就能够实现所数据库活动的工作,包括数据库的创建,修改和查询数据和安全管理和维护数据库,使用户可以继续死对数据库结构根据修改后还需要数据库系统投入使用。同时不会影像数据库的运行,从而使得系统具有良好的可扩展性。
在使用SQL语言访问数据库的时候,用户无需告诉计算机怎样一步步的达成操作,只需要描述清楚所要实现的目的。SQL语言之后便会将用户的要求提供到数据库管理系统,然后其将自动将剩余的任务达成。
尽管SQL语言有着强大的功能,但是它并不复杂,通过很少的几条命令便能实现众多功能。而且,SQL语法和日常语言比较相似,十分便于学习。
SQL语言能够通过到命令的模式直接应用,同时能够嵌入在使用的编程语言之中。如今数据库制作工具普遍的直接将SQL语言变成自己的语言,它是使用起来非常方便。贴现使用,为用户提供了一个灵活的选择。但不管是什么样的应用,SQL语言都会采用大体相同的格式。鉴于SQL 2005所具有的功能可以方便高效的实现本次工作的目的,本系统将使用SQL 2005。
本网站的开发工具使用的是Visual Studio 的二零零八版,使用的是C#语言作为编程语言,用到的技术有ASP.NET这一微软推出的先进技术,在数据库开发方面使用的则是SQLServer数据库,版本为二零零五。
2.5 ADO.NET连接数据库
在网站的开发过程中,如何存取数据库是最常用的部分。.Net 框架提供了多种存取数据库的方式。
ADO.NET这种数据访问技术虽然比较先进,但也存在着需要编写大量重复代码的问题,为了提高工作效率,ASP.NET 2.0进行来大胆的改进,增加来许多数据源控件和数据绑定控件。数据源控件包中的所有接入和数据处理功能,包括连接到数据源头,使用选择,更新,delete和插入SQL代码来获取数据和管理。数据绑定控件是用来显示数据在多种方式。把数据来源相关的控件和绑定上数据的空间有机整合起来,用户只需要轻点需要的属性,基本上不用依靠任何代码就都可以访问数据库。
System.Data命名空间管理专业类在ADO.NET中,数据处理是一个关键部分。所有依靠ADO.NET的软件的实现方法的关键都是数据集。该数据集是一个内存库中的副本。一个数据集包括许多数据表,每个数据表一般都会对应着一个数据库的表或者视图。有些特定的命名空间便是用来提供处理数据集,数据表和
9
视图的类。通过这些类能够方便的以编程的方式与数据库中的数据进行交互。
System.Data命名空间中的类,涵盖了所有的内容和关系数据库,如某些特定的类的外键查找和修改数据视图的数据关系表。
使用System.Data能够将数据库中的数据进行缓存,方便客户端进行读取,从而打到提高数据交互性能的目的。
System.Data是数据操作的关键,System.Data命名空间中包含的类负责着协调整合修改并且提供数据交互的一些常用功能:
通过使用共同System.Data命名空间中的类和接口的连接,可实现连接数据库。在这之中最关键的是DataSet类,它管理者数据库中的多个表。这些表在第一次读出来之后就保存在内存中,在此读取的时候可以直接从内存中读取,因此一般会把DataSet放在内存的缓存里边。
10