Asp.net 简明教程
ASP.NET - Introduction
ASP.NET 是一个网络开发平台,它提供了一个编程模型、一个综合的软件基础设施和各种服务,通过这些服务可以为 PC 和移动设备构建出强劲的网络应用程序。
ASP.NET 建立在 HTTP 协议之上,并使用 HTTP 命令和策略来设置一个浏览器到服务器的双边通信和协作。
ASP.NET 属于 Microsoft .Net 平台。ASP.NET 应用程序是经过编译的代码,使用 .Net 框架中的可扩展和可重用组件或对象编写。这些代码可以使用 .Net 框架中的整个类层次。
ASP.NET 应用程序代码可以使用以下任何一种语言编写:
-
C#
-
Visual Basic.Net
-
Jscript
-
J#
ASP.NET 用于在互联网上产出交互式的、数据驱动的网络应用程序。它包含大量的控件,例如文本框、按钮和标签,用于组装、配置和操控代码以创建 HTML 页面。
ASP.NET Web Forms Model
ASP.NET 网页表单将事件驱动的、用于交互的模型扩展到了网络应用程序。浏览器向网络服务器提交一个网络表单,作为响应,服务器返回一个完整的标记页面或 HTML 页面。
所有客户端用户活动都会被转发到服务器进行状态化处理。服务器处理客户端动作的输出,然后触发反应。
现在,HTTP 是一种无状态协议。ASP.NET 框架有助于存储有关应用程序状态的信息,其中包括:
-
Page state
-
Session state
页面状态是客户端状态,即 Web 表单中各种输入字段的内容。会话状态是从用户访问和使用过的各个页面获得的信息集合,即整体会话状态。为了澄清概念,我们以购物车为例。
用户向购物车添加商品。从某个页面(例如商品页面)选择商品,并将在不同页面(例如购物车页面)上显示收集到的商品总数和价格。只有 HTTP 无法跟踪来自各个页面的所有信息。ASP.NET 会话状态和服务器端基础架构跟踪会话中全局收集的信息。
在生成 ASP.NET 运行时代码时,ASP.NET 运行时将页面状态从服务器跨页面请求携带到服务器,并将在隐藏字段中合并服务器端组件的状态。
通过这种方式,服务器了解整体应用程序状态并以双层连接方式运行。
The ASP.NET Component Model
ASP.NET 组件模型提供 ASP.NET 页面的各种构建块。本质上它是一个对象模型,描述:
-
几乎所有 HTML 元素或标签(例如 <form> 和 <input>)的服务器端对应项。
-
服务器控件,它有助于开发复杂的用户界面。例如,日历控件或网格视图控件。
ASP.NET 是一项技术,可在 .Net 框架上运行,其中包含所有与 Web 相关的功能。.Net 框架由面向对象层次结构组成。ASP.NET 网页应用程序由页面组成。当用户请求 ASP.NET 页面时,IIS 将页面的处理委托给 ASP.NET 运行时系统。
ASP.NET 运行时将 .aspx 页面转换为一个类实例,该类从 .Net 框架的基本类页面继承。因此,每个 ASP.NET 页面都是一个对象,其所有组件(即服务器端控件)也是对象。
Components of .Net Framework 3.5
在进入 Visual Studio.Net 的下一部分之前,让我们先了解 .Net 框架 3.5 的各个组件。下表描述了 .Net 框架 3.5 的组件及其执行的工作:
Components and their Description |
(1) Common Language Runtime or CLR 它执行内存管理、异常处理、调试、安全检查、线程执行、代码执行、代码安全、验证和编译。CLR 直接管理的代码称为托管代码。当托管代码被编译时,编译器将源代码转换为 CPU 无关的中间语言 (IL) 代码。即时 (JIT) 编译器将 IL 代码编译为本机代码,这是 CPU 特定的。 |
(2) .Net Framework Class Library 它包含一个可重复使用类型、类、接口、结构和枚举值的巨大库,统称为类型。 |
(3) Common Language Specification 它包含 .Net 支持的语言规范和语言集成的实现。 |
(4) Common Type System 它为在运行时声明、使用和管理类型以及跨语言通信提供指南。 |
(5) Metadata and Assemblies 元数据是描述程序的二进制信息,它存储在可移植可执行文件 (PE) 中或存储在内存中。程序集是一个逻辑单元,它包含程序集清单、类型元数据、IL 代码和一组资源(如图像文件)。 |
(6) Windows Forms Windows Forms 包含应用程序中显示的任何窗口的图形表示。 |
(7) ASP.NET and ASP.NET AJAX ASP.NET 是 Web 开发模型,而 AJAX 是 ASP.NET 的扩展,用于开发和实现 AJAX 功能。ASP.NET AJAX 包含允许开发人员在不完全重新加载页面的情况下更新网站上数据的组件。 |
(8) ADO.NET 这是用于处理数据和数据库的技术。它提供对数据源的访问,例如 SQL Server、OLE DB、XML 等。ADO.NET 允许连接到数据源以检索、处理和更新数据。 |
(9) Windows Workflow Foundation (WF) 它有助于在 Windows 中构建基于工作流的应用程序。它包含活动、工作流运行时、工作流设计器和规则引擎。 |
(10) Windows Presentation Foundation 它提供用户界面和业务逻辑之间的分离。它有助于使用文档、媒体、二维和三维图形、动画等开发视觉效果惊人的界面。 |
(11) Windows Communication Foundation (WCF) 这是用于构建和执行连接系统的技术。 |
(12) Windows CardSpace 它提供安全措施,以供在互联网上访问资源和共享个人信息。 |
(13) LINQ 它使用类似于传统查询语言 SQL 的语法,为 .Net 语言赋予了数据查询功能。 |