ASP.NET 是微软公司推出的一种动态网页技术,以下是关于它的详细介绍:
1、发展历程
早期阶段:1996 年,ASP 1.0 版本出现,引发了 Web 开发新革命,降低了动态网页开发难度,1998 年,微软发布 ASP 2.0,其外部组件可初始化,有独立内存空间且能进行事务处理,内置的 Microsoft Transaction Server 使制作组件更容易。
.NET 时代:2000 年微软宣布 .NET 框架,2001 年 ASP.NET 浮出水面,最初名为 ASP+,后改为 ASP.NET,它是微软公司开发的一种建立在 .NET 之上的 Web 运行环境,是新一代的 Active Server Pages,也是微软公司新体系结构 .NET 的一部分,2002 年微软发布 .NET 正式版本 .NET Framework 1.0,其中包含 ASP.NET 1.0,此后不断更新升级,功能日益强大。
2、编程开发
硬件环境:建议使用装有 450MHz Pentium Ⅱ级别处理器或更高配置的 PC,对 RAM、硬盘、驱动器、显示器、输入设备等也有相应要求,不过这些要求并非绝对,更高的配置有助于开发。
软件环境:需要 Windows NT 4.0 或更高版本的操作系统(如 Windows 2000 系列、Windows 2003 系列等),同时需安装 .NET Framework,它是 .NET 平台的支撑基础,包含了 .NET 平台的运行库与公用语言运行时,所有 .NET 平台下的程序都要基于它的类库来建立程序,并且程序需先编译为中间语言(IL)再由公用语言运行时管理执行,对于数据库开发,还需要 Microsoft Data Access Components(MDAC)。
编程工具:常用的有 Adobe Dreamweaver、SharpDevelop、MonoDevelop、Microsoft Expression Web、Microsoft WebMatrix、Notepad++、EditPlus 等。
3、语言特点
多语言支持:ASP.NET 具有多语言支持特性,支持多种编程语言,如 C#、VB.NET、JScript.NET 等,它采用类似 Java 的“二次编译技术”,先将应用编译成中间语言 MSIL,再将 MSIL 编译成机器语言执行,只要能被编译成 MSIL 的编程语言都可用来编写 ASP.NET 应用,且每种语言的功能全集比 ASP 中使用的语言功能强大。
增强的性能:页面代码是被编译执行的,利用提前绑定、即时编译、本地优化和缓存服务来提高性能,首次请求页面时进行编译并缓存结果,后续请求直接使用缓存结果,大大提高了页面处理性能。
类和名空间:包含一整套有用的类和名空间,名空间是一种有组织的机制,用于表示可用于其他程序和应用的程序组件,类包含在其中,使 Web 应用程序的编写更加容易,System.web.UI.HtmlControls 包含一些常用的服务器控件类。
服务器控件:提供许多功能强大的服务器控件,简化了 web 页面的创建任务,这些控件提供显示、日历、表格、用户输入验证等通用功能,自动维护选择状态,并允许服务器端代码访问和调用其属性、方法和事件,提供了清晰的编程模型。
支持 Web 服务:提供强大的、标准化的 Web 服务支持能力,可通过使用 Internet 标准将一个 Web 服务和其他 Web 服务集成在一起,构建分布式 Web 应用的基本模块。
更高的安全性:除支持常规 Windows 身份验证方法外,还提供 Passport 和 cookie 两种不同类型的登录和身份验证方法,采用基于角色的安全模式,为不同角色的用户指定不同的安全授权,也使得创建基于页面的身份验证工作更简单。
良好的可伸缩性:允许使用跨服务器会话,其会话状态可以被另一台机器或另一个数据库上的其他进程所维护,随着信息处理和传输流量的增加,可添加更多 Web 服务器。
无 Cookie 会话:即使在浏览器不允许使用 cookie 的情况下,也能使用户使用会话状态,通过 URL 将会话标识传递到 ASP.NET 页面。
4、工作原理
页面请求:当客户端通过浏览器请求页面时,服务器端首先由页面分析器对被请求的页面进行分析。
页面编译:将通过分析的页面内容传递给编译器进行编译。
页面组装:编译后的页面内容被传输给组装缓存,同时一些需要较高资源代价的元素可以创建一次后存入内存。
页面输出:将组装缓存和内存中的内容有机结合后形成完整页面,包括数据、编译代码、HTML 代码等,最后被送往输出缓存。
页面发送:输出缓存中的内容作为客户端的页面请求结果被送回浏览器,当同一页面被第二次请求时,服务器端将跳过所有中间环节,直接从输出缓存中送出页面请求结果。
5、语言基础
Response:Response 对象是属于 Page 对象的成员,不用声明便可直接使用,其主要功能是将 HTTP 的信息封装后,从 ASP.NET 的服务器端响应到用户浏览的网页上,以供用户浏览,主要属性有 BufferOutput(设定 HTTP 输出是否要做缓冲处理,预设为 True)、Cache(传回目前网页快取的设定)、Charset(设定或取得 HTTP 的输出字符编码)、Cookies(传回目前请求的 Httpcookiecollection 对象的集合)、IsClientConnected(传回客户端是否仍然和服务器连接)、StatusCode(传回或设定输出至客户的 HTTP 状态码)等。
6、相关技术及应用
Web Forms:是基于事件驱动的编程模型,类似于传统的 Windows 窗体应用程序开发方式,使用封装 HTML 标记的丰富控件库进行快速开发,适合中级和高级开发人员进行 RAD(快速应用程序开发)开发。
MVC:即 Model-View-Controller(模型 视图 控制器)模式,实现了代码和标记的完全分离,便于编写测试和维护,尤其适合开发移动和单页应用程序等。
Web API:是一种框架,用于轻松构建可以访问多种客户端(包括浏览器和移动设备)的 HTTP 服务,是生成 RESTful 应用程序的理想平台。
SignalR:是一个面向 ASP.NET 开发人员的新库,可更轻松地开发实时 Web 功能,允许服务器和客户端之间进行双向通信,支持 Web 套接字及其他兼容技术。
7、优势归纳
功能强大且完善:具备丰富的类库、服务器控件、语言支持等功能,可满足各种复杂的 Web 开发需求。
高效性:页面代码编译执行,利用多种优化技术提高性能,首次编译后可缓存结果,加快后续请求的响应速度。
安全性高:提供多种身份验证和授权方式,以及基于角色的安全模式,保障应用程序的安全性。
良好的可扩展性和可伸缩性:能够适应不同的业务发展和流量变化需求,方便与其他系统集成和扩展功能。
开发体验好:有强大的开发工具支持,如 Visual Studio,提供所见即所得的编辑环境等,提高了开发效率和质量。
ASP.NET 作为微软推出的动态网页技术,凭借其强大的功能、高效的性能、高度的安全性以及良好的可扩展性和开发体验,在 Web 开发领域占据重要地位,无论是初学者还是资深开发者,都能借助 ASP.NET 快速构建出满足各种需求的高质量 Web 应用程序,为互联网应用的开发提供了坚实的技术支持,有力地推动了 Web 技术的发展和创新。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1625545.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复