摘要:
先来分析asp.net处理一个web请求的过程。学习asp.net技术,除了翻看人家的文档(这是最基本的,知识就是知识,不懂的基本知识无法深入学习),还应当自己学会琢磨,动手实习。当我们从客户端发出一个web请求后,到达web服务器,由web服务器处理或者转给asp.net框架处理。如果不存在web服务器(采用asp.net的缺省web处理),那你可以参鄙人的《CASSINI源代码分析》http:... 阅读全文
摘要:
控制控件的样式 控件最终通常要生成HTML代码在客户端,这些HTML元素可以采用丰富的CSS样式。你当然可以直接进行CSS 设定,但是asp.net给控件开发者提供了编程方式控制样式的途径。如果对样式无特殊要求,直接继承webControl的样式功能即可,如果需要修改或者扩充继承的样式功能,则需要深入了解控件样式的背景知识WebControl的样式功能全部封装在ControlStyle属性中(一个... 阅读全文
摘要:
复杂属性和状态管理 复杂属性声明/持久:所谓复杂属性,即通常不可用CLR的基本数据类型表达的属性。譬如,FontInfo,即代表字体属性,包含Bold 、Name、Size、Color等信息(通常称为子属性)。对于复杂属性,控件在声明时候,通常采用 属性—子属性 的连字符表示复杂属性的一个子属性。其中的划线部分即代表了Font属性。复杂属性的另外一种表达是,将复杂属性嵌套放于控件声明标签之中,乘坐... 阅读全文
摘要:
自定义控件(custom control)入门在服务器端中执行程序逻辑的组件,是asp.net 应用程序的基本构造块。为了能够在asp.net环境执行,必须满足一定条件。 为了能够参与到网页框架执行,需要满足IComponent, IDisposable, IParserAccessor, IdataBindingsAccessor等接口。所以框架提供System.Web.Con... 阅读全文
摘要:
如果我们的服务器控件需要较完备的GUI,譬如需要控制HTML元素的附加属性字体、颜色、高度等,那么应当从Control的子类WebControl继承,以得到所需的基础性能。从WebControl类派生,需要遵守通常如下的约定:1、 包含从System.Web.UI.WebControl的命名空间的引用2、 不能够重载Render方法直接向输出流提供数据,而应当重载RenderContents方... 阅读全文
摘要:
了解ASP.NET底层架构 进入底层这篇文章以非常底层的视角讲述了Web请求(request)在ASP.NET框架中是如何流转的,从Web服务器,通过ISAPI直到请求处理器(handler)和你的代码.看看在幕后都发生了些什么,不要再把ASP.NET看成一个黑盒了. ASP.NET是一个非常强大的构建Web应用的平台,它提供了极大的灵活性和能力以致于可以用它来构建所有类型的Web应用.绝大多数的... 阅读全文