ASP.NET之.NET FrameWork框架
.NET FrameWork框架 是一套应用程序开发框架,主要目的提供一个开发模型.
主要的两个组件:
公共语言运行时(Common Language Runtime)(CLR):
提供内存管理、线程管理和远程处理等核心服务,并且还强制实施严格的安全类型,提高代码的安全性和可靠想.
.NET Framework类库:
与CLR紧密集成,可以使用它开发多种应用程序和服务.主要包括控制台应用程序、Windows窗体应用程序、
WindowsPresentationFoundation(WPF)应用程序(一个类库和一 组API,用于创建在Web服务与客户端之间发送消息的系
统)、ASP.net网站、Web服务、Windows服务、基于WCF的面向服务应用程序和WF的启用工作流程的应用程序等.
ASP.NET是什么?
Active Server Pages(动态服务器页面,运行于IIS之中的程序)
ASP.net是一个统一的Web开发模型,能使用尽量少的代码生成企业级的ASP.net网站所必须的各种服务.
1 、与Framework完美结合.
对于Framenwork框架,在开始已经解释.
2、ASP.net是编译型还是解释型?
是编译型:
1) ASP.net网页首次被访问,CLR加载了IL之后,当每个方法——请注意这是IL中的概念——第一次被执行时,就会使用JIT将IL代码进行编译为机器码。(MicrosoftIntermediate(中间的)
Language,MSIL).
2)ASP.net页面实际执行,直接访问被编译成的机器语言.
IIS(Internet Information Services信息服务)
提供了集成、可靠Web服务器功能,运行ASP.net网站需要IIS支持.
IIS(互联网信息服务)是一种Web网页服务组件,分别用于网页浏览、文件传输、新闻服务和邮件发送等方面,使得在网络上发布信息变的容易.
通俗的讲:
IIS,就是一个网页服务器.允许你把用HTML格式的网页文件放到一个连在网络上的计算机上面,供别人浏览.就像新浪网站一样,把它的全部文件,放到一个连在网络上的计算机上,设置一个缺省目录,我们只要在在浏览器中输入新浪的网址,就可以访问了.
用asp.net生命周期解释页面首次执行比实际执行(二次执行)慢的原因?
先看一张asp.net生命周期的直观图

下面我来讲述一下上面这张图所表达的意思:
- 蓝色箭头表示用户的第一次请求,当用户的请求(以http协议的请求,端口默认是80)到达服务器时,iis软件监听到80端口有新的请求,iis软件会根据用户请求的url的后缀来判断用哪个应用程序处理,如果是以.aspx为后缀的请求,则iis软件会将请求递交给asp.net应用程序处理。asp.net拿到这个请求后,将请求的这个页面进行编译成类文件并保存起来,然后实例化这个类的一个对象,最后响应给用户并销毁该页面对象,用户就可以看到请求的页面了。
- 橙色箭头表示用户第二次请求,asp.net拿到请求之前的步骤跟第一次请求一样;当asp.net拿到这个请求后,它会去查找有没有这个请求所 对应的类文件,如果找到了直接实例化这个类的对象给用户并销毁(省去了编译这一步,速度提高了);如果没有找到,重新编译这个页面类并实例化对象给用户, 然后销毁。所以当我们第一次请求页面的时候会比较慢就是这个多了个编译的过程。
大概的过程就是这样,在这些过程里asp.net应用程序发生了什么,我们还要更进一步的了解。
asp.net总共分为三个生命周期:编译生命周期、应用程序生命周期、页面对象生命周期。
后面的文章是对每个生命周期的讲解。。。
ASP.NET之.NET FrameWork框架的更多相关文章
- ASP.NET在IIS7中如何更改网站的.net framework框架版本
IIS7安装好以后使用了.net 2.0 framework框架,经过折腾发现如下方法可以更改框架版本,从而可以部署使用其他版本框架开发的网站 方法一:建立网站时设置.net框架版本 方法二:对于已经 ...
- .Net 初步学习笔记之一——.Net 平台与.Net FrameWork框架的关系
.Net 包含两部分 .Net平台 和.Net FrameWork 框架 1..Net FrameWork框架包含于.Net平台. .Net FrameWork提供环境和支撑保证.Net平台运行. 2 ...
- ABP 教程文档 1-1 手把手引进门之 ASP.NET Core & Entity Framework Core(官方教程翻译版 版本3.2.5)
本文是ABP官方文档翻译版,翻译基于 3.2.5 版本 官方文档分四部分 一. 教程文档 二.ABP 框架 三.zero 模块 四.其他(中文翻译资源) 本篇是第一部分的第一篇. 第一部分分三篇 1- ...
- 使用ASP.NET MVC+Entity Framework快速搭建系统
详细资料: http://www.cnblogs.com/dingfangbo/p/5771741.html 学习 ASP.NET MVC 也有一段时间了,打算弄个小程序练练手,做为学习过程中的记录和 ...
- ASP.NET Core 配置 EF 框架服务 - ASP.NET Core 基础教程 - 简单教程,简单编程
原文:ASP.NET Core 配置 EF 框架服务 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core 配置 EF 框架服务 上一章节中我们了解了 Entity ...
- .NET6 平台系列2 .NET Framework框架详解
系列目录 [已更新最新开发文章,点击查看详细] 什么是 .NET Framework? .NET Framework 是 Windows 的托管执行环境,可为其运行的应用提供各种服务. 它包括 ...
- ASP.NET与.NET Framework和C#的关系
你好,是我琉忆. 今天我们讲一讲ASP.NET与.NET Framework和C#的关系. 在开始介绍ASP.NET之前,我们需要先了解以下运行ASP.NET的开发平台.NET框架.如果你之前学过C# ...
- 感恩回馈,《ASP.NET Web API 2框架揭秘》免费赠送
在继<WCF全面解析(上下册)>.<ASP.NET MVC 4框架揭秘>之后,我的另一本书<ASP.NET Web API 2框架揭秘>( 本书详细信息见< ...
- 《ASP.NET Web API 2框架揭秘》样章(PDF版本)
<ASP.NET Web API 2框架揭秘>(详情请见<新作<ASP.NET Web API 2框架揭秘>正式出版>)以实例演示的方式介绍了很多与ASP.NET ...
随机推荐
- vga显示彩条
vga显示驱动程序可分为扫描行列和行列同步两个部分 //注意:只有在有效区域内给vga赋值才会有颜色变化 assign vga_b = isready ? vga_s[:] :'d0; assign ...
- AngularJS 初学笔记(理论基础)
AngularJS 是一个 JavaScript 框架.它是一个以 JavaScript 编写的库. AngularJS 通过 ng-directives 扩展了 HTML. ng-app 指令定义一 ...
- C# 正则表达式 结合 委托
使用正则表达式匹配字符串的同时,使用委托事件,处理每一个匹配项 示例代码: string msg = "我的邮箱是zxh@itcast.cn的邮箱是yzk365@chezhihui.com减 ...
- spring security:ajax请求的session超时处理
当前端在用ajax请求时,如果没有设置session超时时间并且做跳转到登录界面的处理,那么只是靠后台是很难完成超时的一系列动作的:但是如果后台 没有封装一个ajax请求公共类,那么在ajax请求上下 ...
- Java中新建子文件夹和新建文件
File file = new File("地址"); file.mkdirs(); //新建文件夹,当没有父文件夹时,但是不会自动创建父文件夹 file.mkdirs(); // ...
- php curl 抓取内容
<?php$ch=curl_init(); curl_setopt($ch,CURLOPT_URL,$url)//抓取url curl_setopt($ch,CURLOPT_RETURNTRAN ...
- liunx下试用yum进行php及opchache扩展安装
Centos 6.6 环境: php 5.6.29 nginx:1.10.2 1.配置安装包源 # CentOs 6.x rpm -Uvh http://mirror.webtatic.com/yum ...
- SQL优化 总结 精简
索引: 考虑在 where 及 order by 涉及的列上建立索引 经常同时存取多列,且每列都含有重复值可考虑建立组合索引,且查询越频繁的字段放前面 按需使用聚集与非聚集索引,聚集不适合频繁更新.适 ...
- HeartBeat源码安装
只是写了安装流程,具体信息查看互联网; 环境: CentOS6.8 x86_64 min Heartbeat 3.0.6 http://hg.linux-ha.org/heartbeat-STABLE ...
- HDU 5857 Median
因为原序列是排列好了的,那么只要看一下给出的两个区间相交的情况,然后分类讨论一下,O(1)输出. #pragma comment(linker, "/STACK:1024000000,102 ...