ASP.NET 是一个 web 开发平台,它提供编程模型、软件基础程序以及多种服务来帮助开发者搭建健壮的网络应用程序。
ASP.NET 工作于 HTTP 协议之上,并使用 HTTP 命令和政策来建立浏览器到用户之间双向的交流与合作。
ASP.NET 是 Microsoft.NET 平台的一部分。ASP.NET 应用程序是编译后的代码,运行在 .Net framework 中,利用可扩展和可重用的组件和对象编写的。
ASP.NET 应用程序编码可以用以下语言编写:
ASP.NET 用于产生互动的、通过互联网数据驱动的 web 应用程序。它由大量的控件组成,例如:文本框,按钮,组装标签,构形,以及操控编码来创建 HTML 页面。
ASP.NET web 表单延伸了交互作用对 web 应用程序的事件驱动模型。浏览器提交给 web 服务器一个 web 表单,然后服务器返回一个完整的标记页面或 HTML 页面作为回应。
所有客户端用户活动转发到服务器进行有状态的处理。服务器处理客户端动作的输出并触发反馈。
现在,HTTP 是一种无状态协议。ASP.NET 框架帮助储存有关应用程序状态的信息,由以下组成:
页状态是客户端状态,例如:在 web 表单中不同输入领域的内容。会话状态是由用户浏览和使用的不同页面中获得的集合信息,例如:整体会话状态。为了更清楚地了解这个概念,我们拿购物手推车作为例子。
用户在购物手推车中添加项目。项目是在一个页面中所选,叫做项目页面,而项目这个集合的总数和价格就会在不同的页面所显示,叫做购物车页面。只有 HTTP 是不能记录来自不同页面的信息。ASP.NET 会话状态以及服务器基础设施通过一个会话记录全球所收集的信息。
ASP.NET 在生成 ASP.NET 运行时间编码的时候,ASP.NET 运行时间通过页面请求在服务器终端送去或拿回页面状态,并且与隐藏领域内的服务端组件状态合并。
ASP.NET 用这个方法,服务器会意识到整体应用程序状态并以双层的连接方式进行操作。
ASP.NET组件模型提供了 ASP.NET 页面的不同的组成部件。基本上它是一个对象模型,描述为:
<form>
和<input>
。ASP.NET 是一项技术,工作于 .Net 框架,包括所有与网络相关的功能。.NET 框架由一个面向对象的等级组成。一个 ASP.NET 的 web 应用是由页面组成。当一个用户请求一个 ASP.NET 页面,IIS 委派页面到 ASP.NET 的运行时系统。
ASP.NET 运行时把 .aspx 页面转化成为一个类的实例,继承了 .Net 框架的基本类页面。因此,每一个 ASP.NET 页面是一个对象,并且其所有组件如服务器端控件也是对象。
在进入到下一个关于 Visual Studio.Net 的部分,我们先来浏览一下 .Net Framework 3.5 的不同组件。以下表格描述了.Net Framework 3.5 的组件和它们所执行的工作:
组件及描述 |
---|
(1)通用语言运行环境或者 CLR 它执行内存管理、异常处理、调试、安全检查、线程执行、代码执行、代码安全、验证和编译。由 CLR 直接管理的代码被称为管理代码。但通过管理代码被编译,编译器将源代码转化到一个 CPU 独立的中介语言(IL)代码。实时(JIT)编译器将 IL 代码编译成源代码,特定于 CPU。 |
(2).Net Framework 类库 它包含一个有可重复使用类型的巨大的库。类、接口、结构、和枚举值,它们统称为类型。 |
(3)通用语言规范 它包含对于 .NET所支持的语言和集成语言实现的规范。 |
(4)通用类型系统 它提供了对于在运行时声明、使用和管理类型和跨语言交流的指导。 |
(5)元数据和程序集 元数据是描述程序的二进制信息,或者储存在一个可执行文件内(PE),或者储存在内存里。程序集是一个逻辑单元,由程序集清单、元数据类型、IL代码、和一组资源,比如图片文件组成。 |
(6)Windows 窗体 Windows 窗体包括在应用程序中展示的任何窗口的图形表示。 |
(7)ASP.NET 和 ASP.NET AJAX ASP.NET 是 web 开发模型,AJAX 是对于 ASP.NET 开发和执行 AJAX 功能的一个延伸。ASP.NET AJAX 包括组件,可以允许开发者更新网页上的数据,并且不用对页面完整地重新下载。 |
(8)ADO.NET 它是与数据和数据库工作相关的技术。它为数据源提供通道,例如:SQL 服务器、OLE DB、XML 等等。ADO.NET 允许连接源数据进行检索、操作及数据更新。 |
(9)Windows工作流基础(WF) 它帮助构建在 Windows 中以工作流为基础的应用程序。它包括活动、工作流运行时、工作流设计和规则引擎。 |
(10)Windows 描述基础 它提供了一个对于用户界面和业务逻辑之间的分离。它通过使用文档、媒体、两维和三维图形、动画等等,从而帮助开发具有极强的视觉冲击力的界面。 |
(11)Windows 交流基础(WCF) 它是用于构建和执行连接系统的技术。 |
(12)Windows CardSpace 它为网络上访问资源和分享私人信息提供安全保障。 |
(13)LINQ 它赋予 .NET 语言数据查询功能,利用一个类似于传统查询语言 SQL 的句法。 |