Active Server Pages/ASP 3.0 和 ASP.NET 的区别
外观
ASP 和 ASP.NET 之间最重要的区别在于 ASP 使用解释型 VBScript 或 JScript,而 ASP.NET 使用任何 .Net 语言(包括 VB.Net、C#、J# 等)进行编译。
ASP 3.0 将所有代码放在应用程序的前面。程序员无法“隐藏”他或她可能不希望任何人看到的敏感代码。代码被解释的事实也降低了性能。ASP.NET 允许程序员创建包含敏感代码的动态链接库。从开源的角度来看,这可能是一个缺点,但将代码编译成 dll 可以极大地提高性能。
ASP.NET 牢固地植根于 XML。通常,ASP.NET 创建的 dll 最初是命名空间。然后,命名空间中的所有类都编译成单个 dll 二进制文件。
- ASP 主要使用混合了 VB Script 和 HTML 的代码编写。展示层和业务逻辑混合在一起,而 ASP.NET 可以使用多种 .NET 兼容语言编写,例如 C# 或 VB.NET。
- ASP 最多有 4 个内置类,例如 Request、Response、Session 和 Application,而 ASP.NET 使用 .NET 框架类,该框架拥有超过 2000 个内置类。
- ASP 没有服务器端组件,而 ASP.NET 提供了多个服务器端组件,例如 Button、TextBox 等,并且可以在服务器端执行事件驱动的处理。
- ASP 不支持页面级事务,而 ASP.NET 支持页面级事务。
- ASP.NET 为移动设备提供 Web 开发,根据设备类型更改内容类型(wml 或 chtml 等)。
- ASP.NET 允许分离业务逻辑和展示逻辑,因为代码不必直接包含在 *.aspx 页面中。
- ASP.NET 使用完全面向对象的语言,例如 C#,并且也支持跨语言支持。
- ASP.NET 为 Web 服务和丰富的数据结构(如 DataSet)提供支持,这些结构允许断开连接的数据处理。