《Web程序设计》复习题库及答案资料.doc
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、易于维护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的样式 D、基于文件的样式9、下面对protected修饰符说法正确的是( )。A、只有在派生类中访问 B、只能在所属的类中访问C、能在当前应用程序中访问 D、能在所属的类或派生类中访问10、 使用ValidatorSummary控件需要以对话框形式显示错误信息,则应( )。A、 设置属性ShowSummary值为trueB、 设置属性ShowMessageBox值为trueC、 设置属性ShowSummary值为falseD、 设置属性ShowMessageBox值为false11、 Session状态和Cookie状态的最大区别是( )。A、 存储的位置不同 B、类型不同 C、生命周期不同 D、容量不同12、 下面有关SqlDataSource控件的描述中错误的是( )。A、 可连接Access数据库B、 可执行SQL Server中的存储过程C、 可插入、修改、删除、查询数据D、 在数据操作时,不能使用参数13、 Login控件的属性DestinationPageUrl的作用是( )。A、 登陆成功时的提示 B、登录失败时的提示C、登录失败时转向的网页 D、登录成功时转向的网页14、 母版页中使用导航控件,要求( )。A、 母版页必须在根文件夹下B、 母版页名字必须为Web.masterC、 与普通页一样使用,浏览母版页时就可以查看效果D、 必须有内容页才能查看效果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对象方法中,可以连接执行Transact-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、RegularExpressionValidator21、 如果要在网页上添加一个计算器来统计人数的话,我们可以选用( )对象对计数变量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应用程序中访问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、构造函数不可以用private修饰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、下列选项中,只有( )是错误的。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、Request 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>”) B、Response.Write(“Server.HtmlEncode (“<B>”)”)C、Response.Write(Server.HtmlEncode (“<B>”)D、Server.Server(Write.HtmlEncode (“<B>”)37、 当一种服务器端控件有多种外貌的定义时,用( )属性来区别它们的定义。A、ID B、Color C、BackColor D、SkinID38、在图片校验码的图片中增加一些线条或点阵是为了( )。A、使图片更美观 B、是图片更加规整 C、干扰机器人的识别 D、使图像更丰富39、用户控件是后缀为( )的文件。A、.master B、.asax C、.aspx D、.ascx40、在三层架构中,客户端是系统的前台,负责用户界面的显示;后台负责数据的存储和管理;而中间层负责( )。A、非UI的逻辑处理 B、安全监督 C、代码优化 D、协助后台管理二、 填空题1. ADO.NET中包含的对象有 、 、 、 、 。2. 试列举出常用的服务器端数据验证控件(不低于4个) 、 、 、 。3. Application和Session对象的事件分别在什么时候发生 、 。4. 在使用DataView对象进行筛选和排序等操作之前,必须指定一个 。 对象作为DataView对象的数据来源。5. Cookie是Web服务器保存在用户硬盘上的一段文本,分会话Cookie和永久Cookie。如要定义一个永久Cookie,则必须设置Cookie的 属性。6. 在ASP.NET应用程序中访问SqlServer数据库时,需要导入的命名空间为 。7. 如果需要确保用户输入大于100的值,应该使用 验证控件。8. ASP.NET中 对象可用来决定何时或如何将输出由服务器端传送至浏览器。9. 若要将浏览器端导向至其他网页,可使用 方法。10. HTML通过 来标记要在网页中显示的各个部分, 同时还用于描述超文本的显示方式。11. 在DIV+CSS盒子模型中设置“上外边距”的属性是 。12. 在DIV+CSS布局中,DIV承载的是 ,而CSS承载的是 ,从而实现内容与样式的分离。13. ASP.NET与ASP相比,其优点是 、 、 等。14. 在ASP.NET基本控件中不支持任何事件的控件是 。15. 当用户在TextBox控件中按Enter或Tab键,TextBox控件将失去输入焦点, 属性确定当控件失去输入焦点时,页面是否自动回传到服务器进行处理。16. 在使用RadioButton控件设计一组选择题时,其 属性名应一致。17. 能够控制所包含控件的可见性及外观的控件是 控件。18. 在使用FileUpLoad控件时,用户可以通过直接输入文件名或通过浏览按钮选择文件,然后调用FileUpload的 方法保存到磁盘上。19.PlaceHolder控件与Panel控件的根本区别在于: 有客户端脚本,在客户端对控件的分组进行操作; 没有客户端脚本仅在服务器端起分组的作用。20. 在使用 CustomValidator控件时,如果要在服务器端进行验证,需要为该控件的 事件编写处理函数;如果要在客户端验证,则需要在控件的 属性中指定客户端验证脚本的函数名称。21. 用户控件的扩展名为 。22. Request 对象的 属性获取当前请求的虚拟路径。23. Application对象在 时候生成;在 时,Application对象都将丢失。24. 当用户在客户端直接关闭浏览器退出Web应用程序时,并不会触发Session_End事件,Session_End事件只有在 、 、 时才会被触发。25. DataAdapter表示一组 SQL命令和一个数据库连接,它们用于 和 。26. ASP.NET中参与数据绑定的有两类服务器控件: 和 。27. GridView控件中 方法可以根据指定的排序表达式和方法对Gridview控件进行排序。28. 在包含多个表的DataTable对象的DataSet中,可以使用 对象来使一个表和另一个表相关。29. DataReader可以对数据库进行_和_的访问。30. 向数据源插入一条记录,需要将命令对象的CommandText属性设臵为SQL语言的Insert命令后,再调用命令对象的 方法。31. 将一个Button控件加入到DataList控件的模板中,其CommandName属性设臵为“buy”,当它被单击时将引发DataList控件的 事件。32. 语句DropDownList1.Items0.Selected=true;的作用是 。33. 要掩盖TextBox控件中文本,需要将控件的TextMode属性设置为 。34. 将数据集中的数据同步到数据源中,必须调用DataAdapter的 方法。35. 将DropDownList控件中的首项移除的语句应写为 。36. 要使TextBox控件只读,需要将其 属性设置为true。37. 使用Response对象的 方法可以实现用户从一个Web窗体重定向到另一个窗体。38. 使用Repeater控件时,必须使用的模板是 。39. ASP.NET中,应用程序的配置文件是 。40. 对象提供对服务器上的方法和属性的访问,其中大多数方法和属性是作为实用程序的功能服务的。41. 获取本地时间的嵌入式表达式为 42. 数据绑定表达式使用 和 方法将数据绑定到控件 ,并将更改提交回数据库。43. 将GridView控件绑定到ADO.NET查询结果的一般方法为: GridView控件.DataSource=查询结果对象; ; 其中,查询结果对象可以是DataReader、DataSet、DataTable。44. 网站结构中,用于存放ASP.NET AJAX相关的文件的保留文件夹是 。45. 保留文件夹App_Code用于 。46.数据访问层封装访问数据库的各种通用操作,如连接数据库、数据的读/写操作和断开数据库连接等,该层由 类实现。47.业务逻辑层调用数据访问的功能,为上层页面提供数据服务。它的作用是对上层 ,使上层只关心数据之间的逻辑关系,从而简化数据访问的接口。48. Application对象的初始化是在 文件中编写的。49. 事件是当服务器控件加载Page对象时发生的。也就是说,每次加载页面时,无论是初次浏览还是通过单击按钮或者其他事件再次调用页面,都会触发此事件。50. 要验证文本框中输入的数据是否为合法的邮编,需要使用 验证控件。三、 简答题1、 Web是一种典型的分布式应用框架,请叙述服务器端动态Web页面的工作原理?2、 C#数据类型分为哪两大类?请叙述这两类数据的区别?3、 ADO.NET中常用的对象有哪些?分别描述一下。4、 ASP.NET基本内置对象包括哪些?请分别综述其功能?5、 叙述ASP.NET Web窗体事件模型如何实现尽量减少事件中信息的往返次数?6、 private、protected、public、internal修饰符的访问权限?7、 请叙述数据库应用程序的基本开发流程?8、 Application对象和Session对象有什么联系和区别?9、 试述Session与Cookie的异同?10、 简述HTTP协议处理事务的基本步骤?11、简述Web服务器向浏览器提供服务的过程12、把一个HTML网页文件直接更改扩展名为.asp行不行?13、.NET Framework针对不同的数据库,设计了下面几种数据提供程序?14、在SQL数据库的连接中,需要使用.NET提供的SqlConnection对象来对数据库进行连接,使用SqlConnection连接Access数据库和Sqlserver数据库,所引用的命名空间有什么区别?15、 SQL SERVER数据库有哪两种连接模式?16、什么是数据绑定?简述其工作原理。 18、列举ASP.NET 页面之间传递值的几种方式?19、请说明在.net中常用的几种页面间传递参数的方法,并说出他们的优缺点。 20、Global.aspx文件在ASP.NET网站中有什么作用?四、 程序填空题1.(1)下面的网页程序Login.aspx用于网站的登录验证,当用户击点登录按钮时,执行下列代码。下述代码将连接位于D:InetpubwwwApp_Data文件夹下的PSWeb.mdb数据库,从Login表中查询指定的用户名和密码是否存在。如果用户输入的用户名或密码不正确,给出相应的提示;如果正确,则转向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="Provider=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表中有此用户名和密码,则允许登录 canLogin = true; ( 4 ) ; / 关闭数据库连接 if ( canLogin ) / 如果验证通过允许登录 ( 5 ) ; / 跳转到main.aspx页面 else Response.Write("<script>alert('您输入的用户名或密码')</script>"); 提示:Command对象的常用方法有:ExcuteReader, ExcuteNonQuery, ExcuteScalar。(2)根据提示完成以下程序private void Button1_Click(object sender, System.EventArgs e) /先清空ListBox2中的选项 ( 1 ) ;/将ListBox1中被选中的项添加到ListBox2中 For ( int i=0;i< this.ListBox1.Items.Count;i+) If (ListBox1.Itemsi. Selected) (2) .Add ( (3) ); /将ListBox1中被选中的项删除 For ( int i=0; i< this.ListBox1.Items.Count; i+) if(this.ListBox1.Itemsi.Selected) this.ListBox1.Items. (4) ( (5) ); 2. 以下程序是实现简单的发表留言,显示留言的功能。Default.aspx代码:<form id="form1" runat="server"> 姓名<asp:TextBox ID="tb_UserName" runat="server"></asp:TextBox><br /> 留言<asp:TextBox ID="tb_Message" runat="server" Height="100px" TextMode="MultiLine" Width="300px"></asp:TextBox><br /> <asp:Button ID="btn_SendMessage" runat="server" Text="发表留言" OnClick="btn_SendMessage_Click" /><br /><asp:Repeater ID="rpt_Message" runat="server"> <ItemTemplate> <table width="600px" style="border:solid 1px #666666; font-size:10pt; background-color:#f0f0f0"> <tr> <td align="left" width="400px"> <%# Eval("Message")%></td> <td align="right" width="200px"><%# Eval("PostTime")%> - <%# Eval("UserName")%></td> </tr> </table> </ItemTemplate> </asp:Repeater>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 System.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;Trusted_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(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" SqlDataAdapter 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 System.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.Page protected System.Data.SqlClient.SqlConnection Cn; protected System.Data.SqlClient.SqlCommand Cm; protected System.Data.SqlClient.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(object sender, EventArgs e) string str = ConfigurationSettings.AppSettings"strConnection" Cn = new SqlConnection( ( 2 ) ); Cn.Open(); Cm = new SqlCommand(" ( 3 ) userlogin WHERE username='" + nametex.Text + "'", C