发语言经验,建议直接学习C#即可。
ASP.net使运行一些很平常的任务如表单的提交客户端的身份验证、分布系统和网站配置变得非常简单。例如ASP.net页面构架允许你建立你自己的用户分界面,使其不同于常见的VB-Like界面。
ASP.net使用一种字符基础的,分级的配置系统,虚拟服务器环境和应用程序的设置更加简单。因为配置信息都保存在简单文本中,新的设置有可能都不需要启动本地的管理员工具就可以实现。这种被称为"Zero Local Administration"的哲学观念使Asp.net的基于应用的开发更加具体和快捷。一个ASP.net的应用程序在一台服务器系统的安装只需要简单的拷贝一些必须的文件,不需要系统的重新启动,一切就是这么简单。多处理器环境的可靠性 ASP.net已经被刻意设计成为一种可以用于多处理器的开发工具,它在多处理器的环境下用特殊的无缝连接技术,将很大的提高运行速度。即使你现在的ASP.net应用软件是为一个处理器开发的,将来多处理器运行时不需要任何改变都能提高他们的效能,但现在的ASP却做不到这一点。自定义性和可扩展性 ASP.net设计时考虑了让网站开发人员可以在自己的代码中自己定义"plug-in"的模块。这与原来的包含关系不同,ASP.net可以加入自己定义的任何组件。网站程序的开发从来没有这么简单过。安全性基于Windows认证技术和每应用程序配置,你可以确保你的原程序是绝对安全的。 ASP.NET 的语法在很大程度上与 ASP 兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。可以通过在现有 ASP 应用程序中逐渐添加 ASP.NET 功能,随时增强 ASP 应用程序的功能。 ASP.NET 是一个已编译的、基于 .NET 的环境,把基于通用语言的程序在服务器上运行。将程序在服务器端首次运行时进行编译,比ASP即时解释程序速度上要快很多.而且是可以用任何与 .NET 兼容的语言(包括 Visual Basic .NET、C# 和 JScript .NET.)创作应用程序。另外,任何 ASP.NET 应用程序都可以使用整个 .NET Framework。开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。 ASP.NET 可以无缝地与 WYSIWYG HTML 编辑器和其他编程工具(包括 Microsoft Visual Studio .NET)一起工作。这不仅使得 Web 开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到 Web 页的 GUI 和完全集成的调试支持。 当创建 ASP.NET 应用程序时,开发人员可以使用 Web 窗体或 XML Web services,或以他们认为合适的任何方式进行组合。每个功能都能得到同一结构的支持,使您能够使用身份验证方案,缓存经常使用的数据,或者对应用程序的配置进行自定义. 如果你从来没有开发过网站程序,那么这不适合你,你应该至少掌握一些HTML语言和简单的Web开发术语。你不需要先前的ASP开发经验,但是你必须了解交互式Web程序开发的概念,包含窗体,脚本,和数据接口的概念,如果你具备了这些条件的话,那么你就可以在Asp.net的世界开始展翅高飞了。
当装载(hosting) ASP.NET 的 Web 服务器接收到 HTTP 要求时,HTTP 聆听程序 (HTTP Listener) 会将要求转交给 URL 指定的网站应用程序的工作流程 (Worker Process),ASP.NET 的工作流程处理器 (aspnet_isapi.dll,若是 IIS 5.0 时则是 aspnet_wp.exe) 会解析 URL,并激活位于 System.Web.Hosting 命名空间中的 ISAPIRuntime对象,接收 HTTP 要求,并调用 HttpRuntime,运行 HttpRuntime.ProcessRequest(),在 ProcessRequest() 中使用 HttpApplicationFactory 建立新的 HttpApplication (或是指定的 IHttpHandler 处理器),再分派给 Page 中的 ProcessRequest() 或是 IHttpHandler 的 ProcessRequest() 方法,运行之后,再传回到 ISAPIRuntime,以及 aspnet_isapi.dll,最后交由 HTTP Listener 回传给用户端,因为运行程序有如管线般顺畅的运行,因此称为 HTTP Pipeline Mode。
在 ASP.NET 内部的 HTTP 处理器有: ISAPIRuntime:由 aspnet_isapi.dll 调用,初始化 HttpWorkerRequest 对象(会由IIS的版本决定要初始化的版本)。 HttpRuntime:提供要求队列 (Request Queue)、调用 HttpWorkerRequest 中的 ProcessRequest() 方法,以及后续的处理工作。 HttpWorkerRequest:产生 HttpApplication、HttpRequest、HttpResponse 等基础对象的 HTTP 要求对象,并将要求转送到要处理的对象(并调用它的 ProcessRequest() 方法)。 IHttpHandler 与 IHttpAsyncHandler:负责处理 HTTP 要求的单元,由 ProcessRequest() 来分派与运行要求。 ASP.NET网页中的事件程序 当 HttpWorkerRequest 调用 ASP.NET 网页(System.Web.UI 命名空间的 Page 类) 的 Page.ProcessRequest() 方法时,它会依序的引发 Page 内的各个事件,并同时调用在 Page 中所有控件的相关事件,其引发顺序为: PreInit 事件:运行预先初始化的工作,在ASP.NET 2.0中,若要动态调整主版页面 (Master Page)、布景主题 (Theme) 时,要在这个事件中调整。 Init 事件:运行初始化工作。 InitCompleted 事件:在完成初始化工作后引发。 Preload 事件:运行预先加载的工作。 Load 事件:运行加载的工作,大多数的网页都拥有 Page_Load 事件处理程序,用户控件中也有 Page_Load 事件例程,都会在此时调用。 控件的 PostBack 变更通知:当网页侦测到是 PostBack 要求时,会引发 PostBack 消息通知的事件。 控件的 PostBack 相关事件:当网页侦测到是 PostBack 要求时,会引发 PostBack 消息指定的控件的事件。 LoadCompleted 事件:运行加载完成后的工作。 PreRender 事件:处理在产生 HTML 结果前的工作。 SaveStateCompleted 事件:处理页面状态 (ViewState 与 ControlState) 储存完成后的事件。 Render 事件:处理产生 HTML 的工作。 Unload 事件:处理退出网页处理时的工作。 如果 HttpWorkerRequest 调用的是实现 IHttpHandler 界面的 HTTP 处理程序时,它只会调用 IHttpHandler.ProcessRequest() 方法,由它来处理程序的输出,不像 Page.ProcessRequest() 会处理事件顺序,因此 HTTP Handler 很适合轻量级的数据处理,像是输出文件数据流或是图片数据流等。
ASP.net与ASP的区别:ASP是解释性编程框架,而ASP.net是编译性框架,ASP.net无论是从执行效率和安全上都远远超过ASP而文件上也是有差异的ASP
的后缀是.asp 而ASP.net则是 .aspx和.aspx.cs ,ASP.net实现了代码分离。可以说让代码管理更加直观。
以往在ASP中常被使用的五大基本对象,在ASP.net中依然支持:
Application:包装了 HttpApplication 对象,在程序中使用 Application 指令取得的对象,都是来自于 HttpContext.Current.Application 属性回传而得。
Request:包装了 HttpRequest 对象,在程序中使用 Request 指令取得的对象,都是来自于 HttpContext.Current.Request 属性回传而得。
Response:包装了 HttpResponse 对象,在程序中使用 Response 指令取得的对象,都是来自于 HttpContext.Current.Response 属性回传而得。
Session:包装了 HttpSessionState 对象,在程序中使用 Session 指令取得的对象,都是来自于 HttpContext.Current.Session 属性回传而得。
Server:包装了 HttpServerUtility 对象,在程序中使用 Server 指令取得的对象,都是来自于 Htt
上一篇:
旅游信息管理系统
下一篇:
光强可调LED照明电源设计