10.请解释ASP。NET中的Web页面与其隐藏类之间的关系?
ASP.NET中的页面由两部分组成,页面显示(aspx文件)和代码逻辑(aspx.cs文件)
通过Page指令联系在一起,如下:
<%@Page CodeBehind=”后台代码文件” Inherite=”继承的类”%>
所以关系为:Web页面会继承隐藏类
11.什么是ViewState,能否禁用?是否所用控件都可以禁用?
Web页面是没有状态的,ViewState(视图状态)可用来保存Web页面在客户端和服务器端往返过程的状态
说简单点ViewState只不过是Hidden控件,加上微软写上的一些代码而已
可以禁用,由三种方法:
1)禁用单个控件:控件.EnableViewState = false;
2)禁用单个页面:<%@ Page EnableViewState=“false”%>
3)禁用整个程序:web.config中,<Pages enableViewState=“false”>
12.当发现不能读取页面上的输入的数据时很有可能是什么原因造成的?怎么解决
可能情况:1)可能事件没有关联
2)根本就没有写读取代码
3)写错了事件
4)在Load事件中有清空代码,但没有写 if (!IsPostBack)
14.请解释一个WEB页面中代码执行次序。
常用事件执行次序:Init(初始化)->Load(加载)->Event(控件事件)->PreRender(呈现之前)->UnLoad(卸载)
15.请解释什么是上下文对象,在什么情况下要使用上下文对象
HttpContext,封装有关个别 HTTP 请求的所有 HTTP 特定的信息
无论在Page或者cs中,只要获得有关HTTP有关信息,都可以进行调用
16.请解释转发与跳转的区别?
转发:HttpServerUtility.Transfer();
对于当前请求,终止当前页的执行,并使用指向一个新页的指定 URL 路径来开始执行此新页。可以清除 QueryString 和 Form 集合
跳转:HttpResponse.Redirect();
将客户端重定向到新的 URL 并指定该新 URL,默认不终止当前页的执行.
17.请解释ASP.NET中不同页面之间数据传递有那些方式?
ASP.NET默认提交地址的是本页,要提交到其他页有以下几种方式:
1) 会话Session
写:Session[“name”] = value; 读:Session[“name”]
2) 应用程序对象Application
写:Application[“name”] = value; 读:Application[“name”]
3) 转发:
第一个页面: Server.Transfer(“WebForm1.aspx”, true);
第二个页面: Request.Form[“TextBox1”]
4) 跨页提交:
第一个页面:指明提交按钮要回发的URL
<asp:TextBox ID=“txtContent“ runat=”server”/>
<asp:Button ID=“btnOK” PostBackUrl=“B.aspx” runat=“server” Text=“提交” />
第二个页面:
((TextBox)PreviousPage.FindControl(“txtContent”)).Text
5) QueryString
第一个页面:URL?名称=值
第二个页面:Request.QueryString[“名称”]
6) cookie
第一个页面:Httpcookie cookie = new Httpcookie(名称,值); Response.cookies.Add(cookie);
第二个页面:Request.cookies[“名称”].Value
18.请解释ASP.NET中button、linkbutton、imagebutton 及hyperlink这四个控件之间的功别
Button、linkButton、ImageButton三个控件比较相似,都可以进行提交并支持了事件驱动,只是样式不同。
Button为按钮样式,linkButton为超链接样式,ImageButton为图片样式
Hyperlink为运行在服务器端的超级链接,不支持事件驱动



