1、Web 程序设计练习测试题库一、单选题1、下面哪个是属性而不是标记( ) 。A、IMG B、FORM C、 HREF D、TD2、 App_Data 目录用来放置( ) 。A、共享的数据库文件 B、共享文件 C、 被保护的文件 D、代码文件3、 下面关于绝对路径的说法,正确的是( ) 。A、绝对路径是被链接文档的完整 URL,不包括使用的传输协议B、使用绝对路径需要考虑源文件的位置C、在绝对路径中,如果目标文件被移动,则链接同样可用 D、创建外部链接时,必须使用绝对路径4、系统提供数据库通用接口的目的是为了( ) 。A、提高程序运行的效率B、应用程序设计不必考虑数据库的类型C、保证程序安全D、
2、易于维护5、在配置 GridView 控件的 SqlDataSource 数据源控件过程中,单击【高级】按钮的目的是( ) 。A、打开其他窗口 B、输入新参数 C、生成 SQL 编辑语句 D、优化代码6、下面几个图形控件中,不能执行鼠标单击事件的控件是( ) 。A、ImageButton B、Image C、ImageMap D、ImageURL7、web.config 文件不能用于( ) 。A、Application 事件定义 B、数据库连接字符串定义 C、对文件夹访问授权 D、基于角色的安全性控制8、CSS 样式不包括( ) 。A、基于元素的样式 B、基于类的样式 C、基于 ID 的样式
3、D、基于文件的样式9、下面对 protected 修饰符说法正确的是( ) 。A、只有在派生类中访问 B、只能在所属的类中访问C、能在当前应用程序中访问 D、能在所属的类或派生类中访问10、使用 ValidatorSummary 控件需要以对话框形式显示错误信息,则应( ) 。A、设置属性 ShowSummary 值为 trueB、设置属性 ShowMessageBox 值为 trueC、设置属性 ShowSummary 值为 falseD、设置属性 ShowMessageBox 值为 false11、Session 状态和 Cookie 状态的最大区别是( ) 。A、存储的位置不同 B、类型
4、不同 C、生命周期不同 D、容量不同12、下面有关 SqlDataSource 控件的描述中错误的是( ) 。A、可连接 Access 数据库B、可执行 SQL Server 中的存储过程C、可插入、修改、删除、查询数据D、在数据操作时,不能使用参数13、Login 控件的属性 DestinationPageUrl 的作用是( ) 。A、登陆成功时的提示 B、登录失败时的提示C、登录失败时转向的网页 D、登录成功时转向的网页14、母版页中使用导航控件,要求( ) 。A、母版页必须在根文件夹下B、母版页名字必须为 Web.masterC、与普通页一样使用,浏览母版页时就可以查看效果D、必须有内容
5、页才能查看效果15、如果类名为 Myclass,那么( )可以作为它的构造函数。A、Myclass() B、Myclass (double a) C、Myclass(double a) D、void Myclass ()16、下面对于抽象类描述不正确的是( ) 。A、抽象类只能作为基类使用 B、抽象类不能定义对象C、抽象类可以定义实例对象 D、可以实现多态17、下面控件中, ( ) 可以将其他控件包含在其中,所以它常用来包含一组控件。A、AdRatator 控件 B、Button 控件 C、Panel 控件 D、Wizard 控件18、下面 SqlComand 对象方法中,可以连接执行 Tra
6、nsact-SQL 语句并返回受影响行数的是( ) 。A、ExecuteReader B、ExecuteScalar C、Connection D、ExecuteNonQuery19、下面哪些不是 ASP.NET 页面间传递参数的方式?( ) 。A、使用 QueryString B、使用 Session 变量C、使用 Server.Transfer D、使用 ViewState20、如果需要确保用户输入大于 30 且小于 60 的值,应该使用( )验证控件较合理。A、RequiredFieldValidator B、CompareValidatorC、RangeValidator D、Regu
7、larExpressionValidator21、如果要在网页上添加一个计算器来统计人数的话,我们可以选用( )对象对计数变量 Count 的加法操作来实现。A、Session B、Application C、Server D、Page22、下面哪一个对象用于与数据源建立连接:( ) 。A、Command B、Connection C、DataReader D、 DataAdapter23、Global.asax 文件中 Session_Start 事件何时激发( ) 。A、在每个请求开始时激发B、尝试对使用进行身份验证时激发C、启动会话时激发D、在应用程序启动时激发24、在 ASP.NET
8、应用程序中访问 SqlServer 数据库时,需要导入的命名空间为( ) 。A、System.Data.Oracle B、System.Data.SqlClientC、System.Data. ODBC D、System.Data.OleDB25、ASP.NET 框架中,服务器控件是为配合 Web 表单工作而专门设计的。服务器控件有两种类型,它们是( ) 。A、HTML 控件和 Web 控件 B、HTML 控件和 XML 控件C、XML 控件和 Web 控件 D、HTML 控件和 IIS 控件26、下列关于构造函数的描述正确的是( ) 。A、构造函数可以声明返回类型。B、构造函数不可以用 pr
9、ivate 修饰C、构造函数必须与类名相同D、构造函数不能带参数27、Session 对象的默认有效期为多少分钟:( ) 。A、10 B、15 C、20 D、应用程序从启动到结束28、当需要用控件来输入性别(男,女)或婚姻状况(已婚,未婚)时,为了简化输入,应该选用的控件是( ) 。A、RadioButton B、CheckBoxList C、CheckBox D、RadioButtonList29、Global.asax 文件中 Session_Start 事件何时激发( ) 。A、在每个请求开始时激发B、尝试对使用进行身份验证时激发C、启动会话时激发D、在应用程序启动时激发30、下列选项中
10、,只有( )是错误的。A、 提供了多种语言支持 。B、 提供了多种平台支持。C、 提供跨平台支持,也可以在 Unix 下执行D、 采取编译执行的方式,极大的提高了运行的性能。31、下列选项中,哪一个是.net 应用的基础?( ) 。A、公共语言运行类 B、虚拟机 C、基类库 D、类库32、在 ADO.NET 对象模型中,.NET 数据提供程序包括以下的对象,除了( ) 。A、DataReader B、DataAdapter C、DataTable D、Command33、网页重定向功能可以有内置对象( )的方法 Redirect 实现。 A、Server B、Response C、Reques
11、t D、Application34、下列对象可以向 dataset 中填充数据的是( ) 。A、SqlConnection B、SqlCommand C、SqlDataReader D、SqlDataAdapter35、表示只有所属的成员才能访问的修饰符是( ) A、public B、protected C、private D、Internal36、需要写入与 HTML 标记相同的文本时,应利用以下何种方法进行编码:( ) 。A、Response.Server.(HtmlEncode (“”) B、Response.Write( “Server.HtmlEncode (“”)”)C、Respo
12、nse.Write(Server.HtmlEncode (“”)D、Server.Server(Write.HtmlEncode (“”)37、当一种服务器端控件有多种外貌的定义时,用( )属性来区别它们的定义。A、ID B、Color C、 BackColor D、SkinID38、在图片校验码的图片中增加一些线条或点阵是为了( ) 。A、使图片更美观 B、是图片更加规整 C、干扰机器人的识别 D、使图像更丰富39、用户控件是后缀为( )的文件。A、.master B、.asax C、.aspx D、.ascx40、在三层架构中,客户端是系统的前台,负责用户界面的显示;后台负责数据的存储和管
13、理;而中间层负责( ) 。A、非 UI 的逻辑处理 B、安全监督 C、代码优化 D、协助后台管理二、 填空题1. ADO.NET 中包含的对象有 、 、 、 、 。2. 试列举出常用的服务器端数据验证控件(不低于 4 个)、 、 。3. Application 和 Session 对象的事件分别在什么时候发生、 。4. 在使用 DataView 对象进行筛选和排序等操作之前,必须指定一个 。对象作为 DataView 对象的数据来源。5. Cookie 是 Web 服务器保存在用户硬盘上的一段文本,分会话 Cookie 和永久 Cookie。如要定义一个永久 Cookie,则必须设置 Cook
14、ie 的 属性。6. 在 ASP.NET 应用程序中访问 SqlServer 数据库时,需要导入的命名空间为。7. 如果需要确保用户输入大于 100 的值,应该使用 验证控件。8. ASP.NET 中 对象可用来决定何时或如何将输出由服务器端传送至浏览器。9. 若要将浏览器端导向至其他网页,可使用 方法。10. HTML 通过 来标记要在网页中显示的各个部分, 同时还用于描述超文本的显示方式。11. 在 DIV+CSS 盒子模型中设置“上外边距”的属性是 。12. 在 DIV+CSS 布局中,DIV 承载的是 ,而 CSS 承载的是,从而实现内容与样式的分离。13. ASP.NET 与 ASP
15、 相比,其优点是 、 等。14. 在 ASP.NET 基本控件中不支持任何事件的控件是 。15. 当用户在 TextBox 控件中按 Enter 或 Tab 键,TextBox 控件将失去输入焦点,属性确定当控件失去输入焦点时,页面是否自动回传到服务器进行处理。16. 在使用 RadioButton 控件设计一组选择题时,其 属性名应一致。17. 能够控制所包含控件的可见性及外观的控件是 控件。18. 在使用 FileUpLoad 控件时,用户可以通过直接输入文件名或通过浏览按钮选择文件,然后调用 FileUpload 的 方法保存到磁盘上。19.PlaceHolder 控件与 Panel 控
16、件的根本区别在于: 有客户端脚本,在客户端对控件的分组进行操作; 没有客户端脚本仅在服务器端起分组的作用。20. 在使用 CustomValidator 控件时,如果要在服务器端进行验证,需要为该控件的事件编写处理函数;如果要在客户端验证,则需要在控件的属性中指定客户端验证脚本的函数名称。21. 用户控件的扩展名为 。22. Request 对象的 属性获取当前请求的虚拟路径。23. Application 对象在 时候生成;在时,Application 对象都将丢失。24. 当用户在客户端直接关闭浏览器退出 Web 应用程序时,并不会触发 Session_End 事件,Session_End
17、 事件只有在 、 、 时才会被触发。25. DataAdapter 表示一组 SQL 命令和一个数据库连接,它们用于 和 。26. ASP.NET 中参与数据绑定的有两类服务器控件: 和 。27. GridView 控件中 方法可以根据指定的排序表达式和方法对 Gridview 控件进行排序。28. 在包含多个表的 DataTable 对象的 DataSet 中,可以使用 对象来使一个表和另一个表相关。29. DataReader 可以对数据库进行_和_的访问。30. 向数据源插入一条记录,需要将命令对象的 CommandText 属性设臵为 SQL 语言的Insert 命令后,再调用命令对象
18、的 方法。31. 将一个 Button 控件加入到 DataList 控件的模板中,其 CommandName 属性设臵为“buy”,当它被单击时将引发 DataList 控件的 事件。32. 语句 DropDownList1.Items0.Selected=true;的作用是 。33. 要掩盖 TextBox 控件中文本,需要将控件的 TextMode 属性设置为 。34. 将数据集中的数据同步到数据源中,必须调用 DataAdapter 的 方法。35. 将 DropDownList 控件中的首项移除的语句应写为 。36. 要使 TextBox 控件只读,需要将其 属性设置为true。37
19、. 使用 Response 对象的 方法可以实现用户从一个 Web 窗体重定向到另一个窗体。38. 使用 Repeater 控件时,必须使用的模板是 。39. ASP.NET 中,应用程序的配置文件是 。40. 对象提供对服务器上的方法和属性的访问,其中大多数方法和属性是作为实用程序的功能服务的。41. 获取本地时间的嵌入式表达式为 42. 数据绑定表达式使用 和 方法将数据绑定到控件 ,并将更改提交回数据库。43. 将 GridView 控件绑定到 ADO.NET 查询结果的一般方法为:GridView 控件.DataSource=查询结果对象;其中,查询结果对象可以是 DataReader
20、、DataSet、DataTable。44. 网站结构中,用于存放 ASP.NET AJAX 相关的文件的保留文件夹是 。45. 保留文件夹 App_Code 用于 。46.数据访问层封装访问数据库的各种通用操作,如连接数据库、数据的读/写操作和断开数据库连接等,该层由 类实现。47.业务逻辑层调用数据访问的功能,为上层页面提供数据服务。它的作用是对上层 ,使上层只关心数据之间的逻辑关系,从而简化数据访问的接口。48. Application 对象的初始化是在 文件中编写的。49. 事件是当服务器控件加载 Page 对象时发生的。也就是说,每次加载页面时,无论是初次浏览还是通过单击按钮或者其他
21、事件再次调用页面,都会触发此事件。50. 要验证文本框中输入的数据是否为合法的邮编,需要使用 验证控件。三、 简答题1、Web 是一种典型的分布式应用框架,请叙述服务器端动态 Web 页面的工作原理?2、C#数据类型分为哪两大类?请叙述这两类数据的区别?3、ADO.NET 中常用的对象有哪些?分别描述一下。4、ASP.NET 基本内置对象包括哪些?请分别综述其功能?5、叙述 ASP.NET Web 窗体事件模型如何实现尽量减少事件中信息的往返次数?6、private、protected 、public、internal 修饰符的访问权限?7、请叙述数据库应用程序的基本开发流程?8、Applic
22、ation 对象和 Session 对象有什么联系和区别?9、试述 Session 与 Cookie 的异同?10、简述 HTTP 协议处理事务的基本步骤?11、简述 Web 服务器向浏览器提供服务的过程12、把一个 HTML 网页文件直接更改扩展名为.asp 行不行?13、.NET Framework 针对不同的数据库,设计了下面几种数据提供程序?14、在 SQL 数据库的连接中,需要使用.NET 提供的 SqlConnection 对象来对数据库进行连接,使用 SqlConnection 连接 Access 数据库和 Sqlserver 数据库,所引用的命名空间有什么区别?15、SQL S
23、ERVER 数据库有哪两种连接模式?16、什么是数据绑定?简述其工作原理。 18、列举 ASP.NET 页面之间传递值的几种方式?19、请说明在.net 中常用的几种页面间传递参数的方法,并说出他们的优缺点。 20、Global.aspx 文件在 ASP.NET 网站中有什么作用?四、 程序填空题1.(1)下面的网页程序 Login.aspx 用于网站的登录验证,当用户击点登录按钮时,执行下列代码。下述代码将连接位于 D:InetpubwwwApp_Data文件夹下的 PSWeb.mdb 数据库,从 Login 表中查询指定的用户名和密码是否存在。如果用户输入的用户名或密码不正确,给出相应的提
24、示;如果正确,则转向Main.aspx 网页。请将下列程序补充完整。Private void btnLogin_Click(object sender, System.EventArgs e) String username=txtUserName.Text; / 获取输入的用户名String passowrd=txtPassword.Text; / 获取输入的密码bool canLogin=false;/ 标记变量,是否允许登录,默认为不允许OleDbConnection conn = new OleDbConnection(); conn.ConnectionString=“Provide
25、r=Microsoft.Jet.OLEDB.4.0;“ +“DataSource=“+ (1) string sqlString=“Select UserName, Password From Login “ +“whereUserName=“+username+ and Password=“+password+“; OleDbCommand comm. = new OleDbCommand(sqlString, conn);conn.Open(); OleDbDataReader dr = comm. ( 2 ) ; If ( ( 3 ) ) / Login 表中有此用户名和密码,则允许登录
26、 canLogin = true; ( 4 ) ; / 关闭数据库连接 if ( canLogin ) / 如果验证通过允许登录 ( 5 ) ; / 跳转到 main.aspx 页面 else Response.Write(“alert(您输入的用户名或密码)“); 提示:Command 对象的常用方法有:ExcuteReader, ExcuteNonQuery, ExcuteScalar。(2)根据提示完成以下程序private void Button1_Click(object sender, System.EventArgs e) /先清空 ListBox2 中的选项( 1 ) ;/将
27、ListBox1 中被选中的项添加到 ListBox2 中For ( int i=0;i姓名留言- Default.aspx.cs 代码:using System;using System.Data;using System.Data.SqlClient; using System.Configuration;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using Sy
28、stem.Web.UI.HtmlControls;public partial class _Default : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e)if ( ( 1 ) )SetBind();protected void btn_SendMessage_Click(object sender, EventArgs e)SqlConnection conn = new SqlConnection(“server=(local)SQLEXPRESS;database=GuestBook;Tr
29、usted_Connection=True“);string Sql = “ ( 2 ) tbGuestBook (UserName,PostTime,Message,IsReplied,Reply) VALUES (“ + tb_UserName.Text + “,“ + DateTime.Now + “,“ + tb_Message.Text + “,0,)“;SqlCommand cmd = new SqlCommand( ( 3 ) , conn);conn.Open();cmd. ( 4 ) ;SetBind();ClientScript.RegisterStartupScript(
30、this.GetType(),“message“,“alert(留言成功!);“,true);conn. ( 5 ) ;tb_Message.Text = “;tb_UserName.Text = “;private void SetBind()SqlConnection conn = new SqlConnection(“server=(local)SQLEXPRESS;database=GuestBook;Trusted_Connection=True“);string Sql = “ ( 6 ) tbGuestBook ( 7 ) PostTime DESC“;SqlDataAdapte
31、r da = new SqlDataAdapter(Sql, conn);DataSet ds = new DataSet();da. ( 8 ) (ds);DataTable dt = ds.Tables0;rpt_Message. ( 9 ) = dt;rpt_Message. ( 10 ) ; 3. 后台实现用户注册和登录功能using System;using System.Data;using System.Configuration;using System.Collections;using System.Web;using System.Web.Security;using S
32、ystem.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;using ( 1 ) ;public partial class Login : System.Web.UI.Pageprotected System.Data.SqlClient.SqlConnection Cn;protected System.Data.SqlClient.SqlCommand Cm;protected System.Data.SqlC
33、lient.SqlDataAdapter Da;protected System.Data.DataSet Ds;protected System.Data.SqlClient.SqlDataReader Dr;protected void Page_Load(object sender, EventArgs e)if (Session“username“ = null | Session“username“ = “) Response.Redirect(“Login.aspx“); /如果 Session 为空,则转到登陆页.protected void Regist_Click(objec
34、t sender, EventArgs e)string str = ConfigurationSettings.AppSettings“strConnection“;Cn = new SqlConnection( ( 2 ) );Cn.Open();Cm = new SqlCommand(“ ( 3 ) userlogin WHERE username=“ + nametex.Text + “, Cn);Dr = Cm.ExecuteReader();if ( ( 4 ) ) /如果存在相同用户名Response.Write(“alert(用户已被注册);window.window.loca
35、tion.href=Login.aspx;“) ;Dr.Close();elseDr.Close();SqlCommand ( 5 ) = new SqlCommand(“INSERT INTO userlogin (username,password,email,question,answer) VALUES (“ + nametex.Text + “,“ + passwtex.Text + “,“ + mailtex.Text + “,“ + questex.Text + “,“ + anstex.Text + “)“, Cn);int i = Cm2.ExecuteNonQuery();
36、Response.Write(“alert(注册成功);window.window.location.href=Login.aspx;“);Cn. ( 6 ) ;protected void Login_Click(object sender, EventArgs e)if ( (7) )string str = ConfigurationSettings.AppSettings“strConnection“;Cn = new SqlConnection(str);Cn.Open();Cm = new SqlCommand(“SELECT * FROM userlogin WHERE user
37、name=“ + us.Text + “ AND password =“ + pas.Text + “, Cn);Dr = Cm. ( 8 ) ;if (Dr.Read()/用户名和密码是否正确Session“username“ = ( 9 ) ;Session“password“ = ( 10 ) ;Response.Write(“alert(登陆成功);window.window.location.href=Login.aspx;“);Dr.Close();elseResponse.Write(“alert(用户名或密码错误!如果还未注册,请先注册!);window.location.hr
38、ef=Login.aspx;“);Cn.Close();elseResponse.Write(“alert(请输入用户名和密码!);window.window.location.href=Login.aspx;“);4. (1)请编写程序段,判断年龄,如果大于 18 岁,则显示“已成年” ,否则显示“未成年” ,要求使用一个表单进行交互,表单处理页面文件为本页面文件如 test1.asp。请补全如下代码:输入年龄:(2) 下面的程序段用来计算客户是第几次访问本站。请填写其中的空格。5.(1) 请编写两个页面,在第一个页面中客户要输入姓名,然后保存到Session 中。在第二个页面中读取该 Se
39、ssion 信息,并显示欢迎信息。如果客户没有在第一页登录就直接访问第二页,要将客户重定向回第一页。 请补全如下程序代码:Page1 文件内容请填写个人信息 姓名: “ “ ) Then ( 2 ) = ( 3 ) ; /创建一个 SESSION 变量,并赋值End If % Page2 文件内容(2)实现用户登录功能default.aspxdefault.aspx.csusing System;using System.Configuration;using System.Data;using System.Web;using System.Web.Security;using System
40、.Web.UI;using System.Web.UI.HtmlControls;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Data.SqlClient;using System.Data.Common;public partial class _Default : System.Web.UI.PageSqlConnection m_Sqlconn;protected void Page_Load(object sender, EventArgs e)if ( (
41、1 ) )this.tbUserName.Text = “;this.tbPassPort.Text = “;DBConnect();public static bool CheckCode(string text)string txt = System.Web.HttpContext.Current.Session“strIdentify“ as string;return text = txt;protected void btLogin_Click(object sender, EventArgs e)string l_strUserName = this.tbUserName.Text
42、.Trim();string l_strPassPort = this.tbPassPort.Text.Trim();string l_sqlTemp = “select * from tbl_user where username = “ + l_strUserName + “ and password = “ + l_strPassPort + “;SqlCommand comm = new SqlCommand(l_sqlTemp, (2) );if (comm.ExecuteScalar() != null)this.lblResult.Text = “登陆成功“;elsethis.l
43、blResult.Text=“用户登录信息错误,请重新输入“;m_Sqlconn. (3) ();public void DBConnect()string conn = System.Configuration.ConfigurationSettings.AppSettings“DBConnectString“;/ “Server=127.0.0.1;user id=sa;password=sa;DataBase=test“;m_Sqlconn = new (4) (conn);trym_Sqlconn.Open();catch(Exception e)this. (5) = e.ToStr
44、ing();五、论述题1、试述 ASP.NET 对数据输入的验证以服务器验证为主,浏览器端验证为辅的原因?2、论述 ASP.NET 4.0 的数据源控件有几种类型?各用于访问什么类型的数据。3、论述当网站采用三层架构时,这三层架构是如何分工的,有什么优点。4、论述为了使得网站众多张网页显示风格一致,ASP.NET 4.0 使用了哪些技术,每种技术从哪些方面使得显示风格一致的。 5、简述 ASP.NET 4.0 的事件模型,系统采用什么方式来减少信息往返次数的。Web 程序设计练习测试题库参考答案一、单选题1、C2、A3、D4、B5、C6、B7、A8、D9、D10、B11、A12、D13、D14
45、、D 15、B16、B17、C18、D19、D20、C21、B22、B23、B24、B25、A26、C27、C28、A29、B30、C31、A32、C33、B34、D35、C36、D37、D38、C39、D40、A二、填空题1. Connection 对象; Command 对象;DataReader 对象;DataAdapter 对象;DataSet 对象2. RequiredFieldValidator(必须项);CompareValidator(与某值的比较) ;RangeValidator(范围检查) ;RegularExpressionValidator(模式匹配) ;CustomValidator(用户定义) ;3. Application 和 Session 对象的事件分别是在应用程序启动时和会话启动时发生的4. DataTable5. Expires6. System.Data.SqlClient7. RangeValidator 8. Response9. Redirect10. 标记符(tag)11. margin-top12. 内容;样式1