用户控件
ASP.NET支持创建通过用户控件创建可重用组件。一个用户控制遵循作为一个Web窗体,除了这些管制措施是来自System.Web.UI.UserControl类,并存储在ascx文件相同的结构。 ASPX文件一样,一个ascx文件包含静态HTML或XHTML标记,以及标记定义Web控制和其他用户控件。该代码隐藏模型都可以使用。
程序员可以添加他们自己的属性,方法和事件handlers.An事件冒泡机制提供了能够通过由一个用户控件激发事件至其包含页。
用户还可以建立Asp.Net应用自定义控件。凡在控制编译的DLL文件。并通过使用注册用户可以使用指令从DLL控制。
渲染技术
ASP.NET使用一个访问了复合材料的渲染技术。在编译过程中,模板(。aspx)文件分为初始化代码生成一个控件树(综合)代表原始模板编译的。文学文本的文学进入控制类的实例,和服务器控件是通过一个具体的控制类的实例表示。初始化代码是结合用户编写的代码(由多个部分类集会通常情况下),并在一类特定的页面结果。该网页双打作为控制树的根。
该网页的实际要求进行处理,通过一系列步骤。首先,在初始化步骤,一个页面类的实例是创建和初始化代码被执行。这产生了初步控制树,现在通常由以下步骤页面的方法操纵。由于树中的每个节点是一个类的实例代表了控制,代码可能会改变树的结构,以及操作的属性单个节点/方法。最后,在渲染步骤访问者用于访问树中的每个节点,每个节点要求使自己使用的游客的方法。由此产生的HTML输出发送到客户端。
该请求后已处理,该页面类的实例将被丢弃,并用它来控制整个树。
国家管理
ASP.NET应用程序是托管在Web服务器,并在无状态的HTTP协议访问。因此,如果应用程序使用有状态的交互,它必须执行自己的状态管理。 ASP.NET提供了在ASP.NET应用程序的状态管理的各种功能。
应用程序状态
应用程序状态是一个用户定义的ASP.NET应用程序是由一个共享变量的集合。这些设置和初始化时,社会上的第一个实例的应用程序载入Application_OnStart事件触发,并退出,直到最后一个实例可用。访问应用程序状态变量是使用应用程序集合,它提供了一个应用程序状态变量的包装。应用程序状态变量是确定的名称。
会话状态
会话状态是一个用户定义的会话变量集合,它是在一个用户会话仍然存在。这些变量是唯一的一个用户会话不同的实例,并使用访问会话的集合。会话变量可以被设定为自动停止活动后规定的时间销毁,即使会议没有结束。在客户端,用户可以通过会话标识的cookie或URL中编码本身的会话ID。
ASP.NET支持三种模式为会话变量的持久性:
在工艺模式
这次会议变量保持在ASP.NET进程。这是最快的方法,但在这种模式下,变量销毁时,ASP.NET进程被回收或关闭。由于应用程序是从时间循环时间不推荐这种模式是关键的应用程序。
ASPState的模式
在这种模式下,ASP.NET运行一个单独的Windows服务,保持状态变量。由于在境外发生的状态管理ASP.NET进程和。NET Remoting的,必须由ASP.NET引擎用来访问数据,这种模式有一个比对业绩产生负面影响的制程模式,虽然这种模式允许ASP.NET应用程序以进行负载均衡和跨越多个服务器规模。然而,由于国家管理服务运行ASP.NET的独立,坚持会话变量可以在ASP.NET进程关闭。
SqlServer模式
在这种模式下,状态变量都存储在数据库服务器,使用SQL访问。会话变量可以坚持这种模式,以及在ASP.NET进程关闭。这种模式的主要优点是它允许应用程序在服务器群集上平衡负载,同时服务器之间共享会话。