好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

.NET框架,ASP.NET 基础学习

.NET框架,ASP.NET 基础学习

.NET框架   英文名(.NET Framework) 同样是微软出的一个开发平台.关于.NET的定义可以参照微软的官方说法:

“ For developers, the .NET Framework provides a comprehensive and consistent programming model for building applications that have visually stunning user experiences and seamless and secure communication.    ”

我简单的翻译下: .NET框架给开发者提供了一个综合、稳定的编程模型,这个模型可以用来建立一个极好的可视化用户体验、无缝并且通讯安全的应用程序。

.NET框架是以一种采用系统虚拟机运行的编程平台,以通用语言运行库(Common Language Runtime)为基础,支援多种语(C#、VB.NET、C++、Python等)的开发。 (来自 维基百科‘.NET框架’关键词 )。

类似于JAVA的跨平台开发概念,这两个平台似乎是竞争对手吧~

这里有一个关于各个版本的栈图,可以看到版本结构。(图片来自维基百科英文页面‘.NET Framework’关键词)

.NET的初级组成是 CIL和CLR ,关于它们的运作图如下:

(图片来自维基百科)

图片中可以看到, CLI 其实是.NET的一个软件开发和运行的枢纽性平台。

他的功能包括异常处理,垃圾回收,安全保障以及互操作( interoperability )等。

通过这个平台,.NET 框架可以实现支持多语言。

CLI的实现依赖于通用语言运行CLR(Common Language Runtime)。

CLR 其实是.NET框架的运行引擎,.NET程序的运行必须在CLR的监管之下,以保证程序在内存管理、安全性和异常处理中的性能和行为。
























.NET的特色:

互操作性( Interoperability ),就是说可以在不同的系统下运行。 CLR引擎( Common Language Runtime Engine ),参照上面对CLR的表述。 独立的语言(Language Independence),支持.NET的语言中任意两种语言之间type 和 object instances的交换。 基类库 ( Base Class Library ),框架类库的一部分,可以被支持.NET框架的所有语言所使用,包含了许多通用功能,如文件读写,图像渲染等。 简单调度( Simplified Deployment ) 安全(Security) 可移植( Portability )

.NET的语言:

由微软开发的.NET语言:

C#     /     Visual Basic .NET      /    C++/CLI     /     JScript .NET     /     J#(已停止使用)   /     F#    /     Microsoft Small Basic

第三方使用.NET的语言:

Ada  / APL  /  Boo   /  COBOL  /    Component Pascal     /    Delphi 8 and Delphi 2005  /    Eiffel    /  Forth   /   FORTRAN  /   IKVM,Java/  IronPython  /   Lexico  /   Lisp  /   Mercury  /   Mondrian /  Nemerle   /   Oberon  /   Perl   /   Python /   PHP  /   RPG  /   Ruby  /   Smalltalk  /   Tcl

 什么是ASP.NET

ASP.NET是内含于.NET框架中,专门用来发展Web应用程式的一组类别库集。  它是其实是一个平台,支持.NET中的多种语言。

ASP.NET由ASP发展而来,由于它的前身ASP在使用中慢慢浮现出来的缺点,微软的团队经过xxxx的考虑,把ASP移植到CLR平台,命名改过多次,发布时为ASP+,后来又更名为ASP.NET。

ASP.NET 的 运行架构 分为几个阶段:

web服务器的信息流动阶段, 我们借用下图表示: 

(这一段是从维基百科复制的,因为我实在懒得写了,看图就挺清楚地。)

当Web 服务器接收到 HTTP 请求时,HTTP 聆听程式 (HTTP Listener) 会将请求转交给 URL 指定的网站应用程式的工作流程 (IIS 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状态管理:  在ASP .NET 网页中的讯息分派、处理。(略了,想看的话上维基吧,我个人觉得作为写代码的。。这个了解就好。)

ASP.NET应用程序由web server掌控,通过HTTP状态协议访问。ASP.NET中提供了多种状态管理函数。

用户端状态管理为 ViewState 以及 Cookies ,伺服端状态管理则是 Session 与 Application 物件。它们的差异点在于:

ViewState 是加密的资料流,和 HTML 一起输出到用户端。 Cookies 是加密(也可不加密)的小型资料,和 HTML 不同,它可以快取在用户端浏览器中。 Session 是服务器端的状态保存机制,每个用户端均有独立的空间(以浏览器执行个体来赋与唯一的SessionID值)。 Application 是服务器端的状态保存机制,但应用程式所有的用户端共用同一份状态资料。

ASP.NET部件:

ASP.NET 是开发 Web 应用程式的基础架构 (framework),除了内部的运作方法外,对外也有许多的开发支援,这样可以给工程师更多的选择方案。

基础部件包括 :

网页: ASP.NET 最基础的底层为网页 (Page),网页由  System.Web.UI.Page  类提供支持。

 ASP.NET 网页在微软的官方名称中,称为  Web Form , ASP.NET Page 所要提供的功能就需要类似 Windows Forms 的表单,每个 Web Form 都要有一个  <form runat="server"></form>  区块,所有的 ASP.NET 服务器控件都要放在这个区域中,这样才可以让 ViewState 等服务器控制能够顺畅的运作。

控件: ASP.NET 的内建控件分为两种:HTML控件和Web控件。除此之外, ASP.NET 也提供了可以自定义的控件架构。 脚本:A SP.NET 的 Web 控件有时会包装一些用户端脚本 (client-side scripting),在控件被绘制时输出到用户端,这些脚本多数被包装在 DLL 的资源档中,并由 ScriptResource.axd 处理例程来输出。 基本物件: Application、 Request、 Response、 Session、 Server

导览部件: (是在 ASP.NET 2.0 中才出现的功能)

选单 (Menu):提供内建的鼠标侦测方式,实作阶层式的选单功能。 网站地图 (Sitemap):提供可层次化目前浏览位置的功能,可支援由 Web.sitemap 中的资料,或是来自数据库或 XML 资料档中的资料来源。 树状查看 (TreeView):提供阶层化的资料浏览,类似于资源管理器的接口。

另外两种是应用程式服务和延展性支援。

哎,我觉得。。说的多了也记不住,了解这些也就差不多了,咱就是写个小代码,弄清楚网路干什么呢。。╮(╯▽╰)╭

I am just a beginner, here we will learn and get familiar with it together.

.NET框架,ASP.NET 基础学习

 

posted @  2012-02-11 16:18  勤劳的饺子 阅读(786) |  评论 (1)   编辑

 

什么是ASP 以及ASP环境的配置。

 

posted @  2012-02-10 21:27  勤劳的饺子 阅读(478) |  评论 (3)   编辑

作者: Leo_wl

    

出处: http://www.cnblogs.com/Leo_wl/

    

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

版权信息

查看更多关于.NET框架,ASP.NET 基础学习的详细内容...

  阅读:44次