2007-08-14 | 我的面试题(二)
下面是我初试中软融鑫的笔试题的一部分,现总结如下:(请广大博友指正)
Q1:C#中的委托是什么?事件是不是一种委托?
答:委托是一个可以对方法进行引用的类。与其他的类不同,委托类具有一个签名,并且它只能对与其签名匹配的方法进行引用。这样,委托就等效于一个类型安全函数指针或一个回调。事件是一种委托。
Q2:什么是Web Service?什么时候用到web service?您对WebService的体会?
答:特殊的web应用程序,http协议,80端口,按照soap协议xml协议进行封装,传递的是xml的信息报包。跨平台,无处不到;速度慢,服务器压力大。
Q3:DataGrid分页机制是什么?
答:DataGrid的内建分页方法是效率不高的,每次请求都必须把整个查询结果发送给Web服务器,Web服务器再把数据分成相应的页面。利用DataGrid的内建的分页方法尽管是很简单的,但是,由于Web应用的无序性特征,一个用户每次从一个页面转向另外一个页面时,DataGrid对象都被销毁并重新创建,这就意味着数据库服务器每次都必须发送全部的结果集。
Q4:请描述一下修饰符protected internal。
答:在同一个Assembly中,他的访问级别和public一样,而跨Assembly访问时,他的访问级别同protected 一样。即protected的范围 + internal的范围。
Q5:ASP.NET的Application、Session、Cookie、ViewState和Cache等变量的区别是什么?
答:Application是公共的,所有人都能看到,所以可以用来做聊天室;session是私有的,每个客户端都存在一个不同的session 生存期正常是20分钟,也可以自己设定为1分钟或2个小时,它存在于服务器端;cookie是保存在本机的文件,记录短小的信息,除非你让cookie过期,否则会一直存在;viewstate类似于asp中的hidden控件,用来记录页面中的控件的状态的,主要在页面间信息传递时用;cache是缓存,用来记录已经执行过的一些数据,比如读取数据库,目的是加速显示,减少服务器的负担,过期时间也是可以自己设定的。
Q6:IhttpModel和Ihttphandler有什么用途?
答:HttpHandler是一个HTTP请求的真正处理中心,也正是在这个HttpHandler容器中,ASP.NET Framework才真正地对客户端请求的服务器页面做出编译和执行,并将处理过后的信息附加在HTTP请求信息流中再次返回到HttpModule中。IHttpHandler定义了如果要实现一个HTTP请求的处理所必需实现的一些系统约定。HttpHandler与HttpModule不同,一旦定义了自己的HttpHandler类,那么它对系统的HttpHandler的关系将是“覆盖”关系。
IHttpHandler接口的合同定义了HTTP处理程序以同步方式处理一个HTTP请求需要采取的行动。
Q7:列举ASP.NET 页面之间传递值的几种方式,他们之间有什么区别?
答. 1.使用QueryString, 如....?id=1; Response. Redirect()....
2.使用Session变量
3.使用Server.Transfer
Querystring是一种非常简单的传值方式,其缺点就是会把要传送的值显示在浏览器的地址栏中,并且在此方法中不能够传递对象。如果你想传递一个安全性不是那么太重要或者是一个简单的数值时,用此方法最好不过了。
使用Session变量传值是一种最常见的方式了,此中方式不仅可以把值传递到下一个页面,还可以交叉传递到多个页面,直至把Session变量的值removed后,变量才会消失。
虽然这种方法有点复杂,但也不失为一种在页面传值的方式。
Q8:在.Net中,类System.Web.UI.Page 可以被继承么?
答:可以。
Q9:大概描述一下ASP.NET服务器控件的生命周期
答:初始化 加载视图状态 处理回发数据 加载 发送回发更改通知 处理回发事件 预呈现 保存状态 呈现 处置 卸载


档案
日志
相册
视频





评论