在很久很久以前----可能都快一年了吧,我第一次看 ASP.net (那时江湖人称 ASP+),看到 application, session 什么的,就和自己说“人在哪!人在哪!"
等到看到 web form server controls,更是忍不住窃笑----“不就是以前 vi6 dtc controls 吗,
你以为你穿了马甲我就不认识你了”。
随便翻了翻就放在一边了。
这两天有时间多看了一下,发现好像不是那么回儿事。
怎么说呢? 夸张点说,ASP.net 和 ASP 的区别,就好像 nt 和 dos 的区别差不多,
猛一看 nt 里也有 dos 命令行,但那能一样吗。也许你觉得这么说太夸张了,但
想想这几点----
. 从技术上说 ASP.net 其实都不需要 iis 的存在
. 所有的 ASPx page 其实都是 class (或者严格些,是 System.Web.UI.Page 的实例)
. Page 是实现了 IHttpHandler 的 class,你也可以写个自己的 class:IHttpHandler
. 所有的 ASPx page 其实都要被 compile 成 dll
. 我们以前的亲人 application/session 什么的,都只是从 System.Web.HttpContext 衍生来的
......
所以干脆换个思路去理解 ASP.net 可能更容易接近它的原形(师傅!有妖怪!)-----
. 最好不要在 ASPx 中写 script,要使用 .ASPx + .cs ----- codehehind
. 把 ASPx 看成 vb form,把 cs 看成 vb code
. 不过这些 “form” 有个本领就是能通过自动生成 HTML 代码从而把自己显示在浏览器中
. 这个本领的实质是因为 page 实现了一个函数叫 render,所以你能通过重载 render 干点更多的事
. 所有的 server control (当然更是 class 了)也是通过 render 生成 HTML 代码的
. 所以你也可以继承一个 control(比如 DataGrid) 然后重载 render 扩展它的功能,做些比较妖的事儿
. 或者你可以直接从 System.Web.UI.WebControls 直接继承,然后做出自己的控件
. 可以在里面封装几个其他控件---- 就成了 composite 控件,更好玩的是可以不做成 assembly, 可以以页面形式被调用
......
cut! 我知道我越说越乱,你越听越晕,但俺新学乍练么,您这西红柿先收着----啪!且听下回分解进入讨论组讨论。
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
相关专题
- VB.NET 入门教程 (22167次浏览)
- asp.net 实现购物车详细代码 (14312次浏览)
- C#版的网站新闻发布系统 (690次浏览)
- ASP.NET2.0轻松搞定统计图表 (651次浏览)
- 使用ASP.NET AJAX实现幻灯片效果 (604次浏览)
- ASP.NET如何存取 SQLServer数据库图片 (592次浏览)
- 如何制作Asp.Net界面模板 (582次浏览)
- ASP.NET中实现DataGrid数据排序 (580次浏览)
- VB.NET读写文本文件方法 (579次浏览)
- VC#初学入门:第一个Windows程序 (536次浏览)



