ASP.NET服务器控制指的是网页中的UI单元,它可以象标签那样显示信息,也可以象文件夹那样收集信息。你可以通过管理其方式和特性以及对事件做出相应反应来编辑一个服务器控制。就象在GUI应用中编辑一个控制指令那样。
WebForms基础架构管理浏览器和服务器之间的互传,并且很大程度上掩盖了编辑Web应用的事实。ASP.NET提供了两套服务器控制:HTML服务器控制和Web服务器控制。本文中,分析了这两种服务器控制的相似之处及不同点。
当讨论编辑ASP.NET网页时,需要知道两点:页面单元和能够提供管理单元方式和特性的相关.NET服务器控制类。把UI从逻辑中分离出来意味着单元在.aspx文件中执行。与服务器控制类相关的对象参考域存在于逻辑类中。它可以在支持.NET如C#(cs)或VB(.vb)环境中运行。
ASP.NET运行时,会在.aspx文件中生成一个.NET类,生成的UI类来自于逻辑类。逻辑类的命名是通过承袭.aspx文件头部@页面指针中的Inherits值来确定的。同时,单元id也被指定与逻辑类中的服务器控制对象参考域同名。
当需要页面的时候,UI类就会在服务器中生成。同时也会为每个用来指定runat="server"的单元生成一个服务器控制对象。并且对象参照也会存储在逻辑类中的相关域中。这样能让逻辑类方式管理由UI类产生的单元。UI和逻辑类之间的关系以及页面单元与服务器控制对象参考之间的关系见图A。
图A