开源软件开发论坛 - 码库
首页 搜索 用户列表 FAQ 注册 登录
开源软件开发论坛 - 码库 » 开发语言 » .NET » 你知道Page继承了多少接口吗?
  你知道Page继承了多少接口吗?
帖子发起人: 漂流一千万公尺   发起时间: 2008-09-05 23:38   回复数: 1
« 上一主题 下一主题 »
楼主
  2008-09-05, 23:38
漂流一千万公尺 离线,最后访问时间: 2008-11-29 23:48:25 漂流一千万公尺

发帖数前10位

士兵
等级: 士兵
注册: 2008年3月30日
积分: 42
精华: 0
发贴: 29
你知道Page继承了多少接口吗?
 

你知道Page继承了多少接口吗?

             这个问题是我一个朋友去面试的时候被问到的,说实在的,开发了很多页面程序,对于 Page 已经不再陌生,可是你能说得出来吗?而且要解释一下,这些接口的功能是做什么的。

IHttpHandler ,此接口的作用为: 定义 ASP.NET 为使用自定义 HTTP 处理程序同步处理 HTTP Web 请求而实现的协定。

INamingContainer ,此接口的作用为: 标识在 Page 对象的控件层次结构内创建新 ID 命名空间的容器控件。这仅是一个标记接口。

IComponent, 此接口作用:提供所有组件所需的功能,它用作公共语言运行库中所有组件的基类。
 
IDisposable, 此接口作用:定义一种释放分配的非托管资源的方法。

IP***rAccessor, 此接口作用:定义 ASP.NET 服务器控件必须实现以识别何时分析元素( HTML XML )的方法。

IDataBindingsAccessor, 此接口作用:允许在设计时访问控件的数据绑定表达式集合。

     以上是 Page 继承的接口及作用,下面我谈一些自己的看法。
1) 由于 WebControl 没有实现接口 IHttpHandle ,所以你不能请求 .ascx 结束的文件,那也就是说如果你想 拥 有特殊的处理模块,那这个模块就必须要实现 IHttpHandle 接口,其实看一下 machine.config 文件,就可以看到有 httpHandle 这个节点,所以你的那个模块也要相应的添加到 httpHandle 节点下面才会有效果出现。
 
2) 剩余的接口没有太多的体会,工作中用到的比较少,就交给大家去琢磨吧! 
        最后,我想说的是,有些东西不要只会使用,使用的同时要揪其原因,如果你一直保持这样的心态,累积下来,你对于相同问题的看法就会有新的看法。

这是转载的一遍文章,虽然不怎么样,但确实是提到了关键的地方,.NET框架给我们提供了太多的帮助,作为程序员,我相信喜欢上.NET的原因其实不仅仅是它足够好,效率高(个人认为执行效率要比JAVA高,可以批我,但不准骂人),可能哈,也许,是我们太懒惰,中国人也许就有这样的劣根,太满足于现状,当然,对于一般企业级的应用,对程序执行效率什么的要求不是很高,更重要的是要求开发效率(没办法,现在硬件好了^o^。这样下去,慢慢的就失去了那种钻研精神。但对于要求高效率的WEB开发,可不能这样搞了,其实一般的页面实现可以直接实现IHttpHandler ,或者加上IDisposable接口,足以满足服务端和客户端的交互(加上现在流行的AJAX方式),用这样的方式测试一下,相信结构会另你大吃一惊,速度那是数以倍计的提高。特别是对于热衷于AJAX技术的朋友,那就更没的必要使用原有的ASPX页面。采用这样的方式提高效率,将会是一个很好的选择,顺便说一下,其实这也是X3BLOG所有服务器与客户端交互全部采用这样的方式实现的原因,我们希望做一个优秀的产品奉贤给大家。希望我们共同学习,共同进步。


IP 地址: 已登录   来自: 已登录    返回顶部
第 2 楼
  2008-09-06, 10:45
水月·静夜思 离线,最后访问时间: 2008-10-13 21:45:58 水月·静夜思

发帖数前10位

士兵
等级: 士兵
注册: 2008年3月30日
积分: 41
精华: 0
发贴: 35
Re: 你知道Page继承了多少接口吗?
 
好文
IP 地址: 已登录   来自: 已登录    返回顶部
 第 1 页 总共 1 页 [共有 2 条记录]
开源软件开发论坛 - 码库 » 开发语言 » .NET » 你知道Page继承了多少接口吗?
[X3BLOG] - [搜客栈网] - [码库] - [hidotnet]

©2008 Muchool.com All Rights Reserved.
ASP.Net Forums 2: 1.1.3158.31836
Powered by Community Server :: Forums Powered by ASP.NET 2.0