1.ASP.NET是同.NET Framework集成在一起的

   .NET Framework是由各个功能模块集合在一起的,提供了10000多个类型。.NET Framework将数以千计的类按照逻辑层次划分到相应的命名空间。不同类别的命名空间提供了不同的特性。.NET通过将各种类别的命名空间汇聚在一起,为分布式开发提供了全方面的支持,从消息队列到安全控制,等等。这些汇聚在一起的工具包称作类库

2.ASP.NET是编译执行的,而不是解锁执行的

   

.net应用程序实际上会精力2个阶段的编译过程。在第一个阶段,编写的c#代码首先被编译成成为MSIL的IL(Intermediate Language,中间语言)。这一步是.net能做到与语言无关的关键所在。被第一次请求的时候,第一步的编译过程会自动执行,或者也可以提前执行此过程(预编译)。这个编译的IL文件称为程序集。变异的第二个阶段发生在页面实际执行时开始。此时,中间代码被编译成本机机器代码。这个阶段称作即使(JIT,juse-in-time)编译。

   ASP.NET应用程序不必在每次请求网页的时候都被编译,这些中间语言代码在源文件被修改之前仅被创建一次

3.ASP.NET支持多语言

   IL是托管应用程序的基石(托管应用程序是为.NET编写并在CLR托管环境内执行的应用程序)。从某种意义上来说,IL就是.NET的语言,他是唯一能被CLR识别的语言(最终的程序代码都会被便以为中间语言)。

   CLS(公共语言规范):

   CLR希望所有的对象都能遵从一个特定的规则集合,从而可进行交互作用。CLS就是这样的一套规则。

   它定义了所有语言必须遵守的“法则”,比如基本类型,方法重载等。任何产生可被CRL执行的IL代码的编译器都必须遵从CLS所管理的规则。

4.ASP.NET运行在公共语言运行库内

   CLR优点:a. 自动内存管理和垃圾回收;

                 b. 类型安全;

                 c. 可扩展的元数据;

                 d. 结构化的错误处理;

                 e. 多线程

5.ASP.NET是面向对象的

6.ASP.NET是跨设备和跨浏览器的

7.ASP.NET易于部署