《Web程序设计》复习题库及答案资料

更新时间:2024-06-09 10:29:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

《Web程序设计》练习测试题库

一、单选题

1、下面哪个是属性而不是标记( )。 A、IMG B、FORM C、 HREF D、TD 2、 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、ImageURL 7、web.config文件不能用于( )。

A、Application事件定义 B、数据库连接字符串定义 C、对文件夹访问授权 D、基于角色的安全性控制 8、CSS样式不包括( )。

A、基于元素的样式 B、基于类的样式 C、基于ID的样式 D、基于文件的样式 9、下面对protected修饰符说法正确的是( )。

A、只有在派生类中访问 B、只能在所属的类中访问 C、能在当前应用程序中访问 D、能在所属的类或派生类中访问

10、使用ValidatorSummary控件需要以对话框形式显示错误信息,则应( )。 A、设置属性ShowSummary值为true B、设置属性ShowMessageBox值为true C、设置属性ShowSummary值为false D、设置属性ShowMessageBox值为false

11、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.master

C、与普通页一样使用,浏览母版页时就可以查看效果 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、ExecuteNonQuery 19、下面哪些不是ASP.NET页面间传递参数的方式?( )。 A、使用QueryString B、使用Session变量 C、使用Server.Transfer D、使用ViewState

20、如果需要确保用户输入大于30且小于60的值,应该使用( )验证控件较合理。 A、RequiredFieldValidator B、CompareValidator

C、RangeValidator D、RegularExpressionValidator

21、如果要在网页上添加一个计算器来统计人数的话,我们可以选用( )对象对计数变量Count的加法操作来实现。

A、Session B、Application C、Server D、Page 22、下面哪一个对象用于与数据源建立连接:( )。

A、Command B、Connection C、DataReader D、DataAdapter 23、Global.asax文件中Session_Start事件何时激发( )。 A、在每个请求开始时激发 B、尝试对使用进行身份验证时激发 C、启动会话时激发 D、在应用程序启动时激发

24、在ASP.NET应用程序中访问SqlServer数据库时,需要导入的命名空间为( )。 A、System.Data.Oracle B、System.Data.SqlClient C、System.Data. ODBC D、System.Data.OleDB

25、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、RadioButtonList 29、Global.asax文件中Session_Start事件何时激发( )。 A、在每个请求开始时激发 B、尝试对使用进行身份验证时激发 C、启动会话时激发 D、在应用程序启动时激发

30、下列选项中,只有( )是错误的。 A、asp.net提供了多种语言支持 。 B、asp.net 提供了多种平台支持。

C、asp.net提供跨平台支持,也可以在Unix下执行

D、asp.net采取编译执行的方式,极大的提高了运行的性能。 31、下列选项中,哪一个是.net应用的基础?( )。

A、公共语言运行类 B、虚拟机 C、基类库 D、类库

32、在ADO.NET对象模型中,.NET数据提供程序包括以下的对象,除了( )。 A、DataReader B、DataAdapter C、DataTable D、Command 33、网页重定向功能可以有内置对象( )的方法Redirect实现。

A、Server B、Response C、Request D、Application 34、下列对象可以向dataset中填充数据的是( )。

A、SqlConnection B、SqlCommand C、SqlDataReader D、SqlDataAdapter 35、表示只有所属的成员才能访问的修饰符是( )

A、public B、protected C、private D、Internal

36、需要写入与HTML标记相同的文本时,应利用以下何种方法进行编码:( )。 A、Response.Server.(HtmlEncode (“”)) B、Response.Write(“Server.HtmlEncode (“”)”) C、Response.Write(Server.HtmlEncode (“”)) D、Server.Server(Write.HtmlEncode (“”))

37、当一种服务器端控件有多种外貌的定义时,用( )属性来区别它们的定义。

A、ID B、Color C、BackColor D、SkinID

38、在图片校验码的图片中增加一些线条或点阵是为了( )。

A、使图片更美观 B、是图片更加规整 C、干扰机器人的识别 D、使图像更丰富 39、用户控件是后缀为( )的文件。

A、.master B、.asax C、.aspx D、.ascx

40、在三层架构中,客户端是系统的前台,负责用户界面的显示;后台负责数据的存储和管理;而中间层负责( )。

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.Items[0].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:\\Inetpub\\www\\App_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=\+\

string sqlString=@\+\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(\您输入的用户名或密码')\ } }

提示: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.Items[i]. Selected) {

(2) .Add ( (3) );

} }

//将ListBox1中被选中的项删除

For ( int i=0; i< this.ListBox1.Items.Count; i++) {

if(this.ListBox1.Items[i].Selected) {

this.ListBox1.Items. (4) ( (5) );

} } }

2. 以下程序是实现简单的发表留言,显示留言的功能。

Default.aspx代码: ……

姓名 留言

<%# Eval(\

……

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 on=True\ string

Sql

=

\

(

2

)

tbGuestBook

(UserName,PostTime,Message,IsReplied,Reply) VALUES ('\+ tb_UserName.Text + \ SqlCommand cmd = new SqlCommand( ( 3 ) , conn); conn.Open();

cmd. ( 4 ) ;

SetBind();

ClientScript.RegisterStartupScript(this.GetType(),\

留言成功!');\

conn. ( 5 ) ; tb_Message.Text = \ tb_UserName.Text = \ }

private void SetBind() {

SqlConnection on=True\

string Sql = \6 ) tbGuestBook ( 7 ) PostTime DESC\

SqlDataAdapter da = new SqlDataAdapter(Sql, conn); DataSet ds = new DataSet(); da. ( 8 ) (ds); DataTable dt = ds.Tables[0];

conn

=

new

SqlConnection(@\

conn

=

new

SqlConnection(@\

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[\ {

Response.Redirect(\如果Session为空,则转到登陆页.

} }

protected void Regist_Click(object sender, EventArgs e) {

string str = ConfigurationSettings.AppSettings[\ Cn = new SqlConnection( ( 2 ) ); Cn.Open();

Cm = new SqlCommand(\ ( 3 ) userlogin WHERE username='\ Dr = Cm.ExecuteReader();

if ( ( 4 ) ) //如果存在相同用户名 {

Response.Write(\用户已被注册');

window.window.location.href='Login.aspx';\ Dr.Close(); } else {

Dr.Close();

SqlCommand ( 5 ) = new SqlCommand(\INTO userlogin (username,password,email,question,answer) VALUES ('\+ nametex.Text + \questex.Text + \ int i = Cm2.ExecuteNonQuery(); Response.Write(\注册成功');window.window.location.href='Login.aspx';\ }

Cn. ( 6 ) ; }

protected void Login_Click(object sender, EventArgs e) {

if ( (7) ) {

string str = ConfigurationSettings.AppSettings[\ Cn = new SqlConnection(str); Cn.Open();

Cm = new SqlCommand(\* FROM userlogin WHERE username='\ Dr = Cm. ( 8 ) ; if (Dr.Read())//用户名和密码是否正确 {

Session[\ Session[\

Response.Write(\登陆成功');window.window.location.href='Login.aspx';\ Dr.Close();

} else {

Response.Write(\用户名或密码错误!如果还未注册,请先注册!');window.location.href='Login.aspx';\ }

Cn.Close(); } else {

Response.Write(\请输入用户名和密码!');window.window.location.href='Login.aspx';\ } } }

4. (1)请编写程序段,判断年龄,如果大于18岁,则显示“已成年”,否则显示“未成

年”,要求使用一个表单进行交互,表单处理页面文件为本页面文件如test1.asp。请补全如下代码:

<%@ Language=vbscript %>

<%

age= ( 4 ) ; If ( ( 5 ) )then

Info=\已成年\Info=\未成年\

response.write( Info );

%>

(2) 下面的程序段用来计算客户是第几次访问本站。请填写其中的空格。

<%

Dim varNumber

varNumber= Request.Cookies(\If( ( 1 ) ) Then //cookie空时 varNumber=1; Else varNumber= ( 2 ) ; End If

( 3 ) =varNumber; //创建名为number的cookie ( 4 ) =#2012-1-1#; //设置cookie的过期日期 Response.Write \您是第\次访问本站\%>

5.(1) 请编写两个页面,在第一个页面中客户要输入姓名,然后保存到Session中。在第二个页面中读取该Session信息,并显示欢迎信息。如果客户没有在第一页登录就直接访问第二页,要将客户重定向回第一页。 请补全如下程序代码:

Page1文件内容

<%

If( ( 1 ) <>\

( 2 ) = ( 3 ) ; //‘创建一个SESSION变量,并赋值 End If %>

Page2文件内容

<%

If( ( 4 ) =\

( 5 ) ; // 重定向到指定的页面 End If %>

在使用SqlConnection类时,需要使用命名空间using System.Data.SqlClient;而连接Access数据库时,需要使用命名空间using System.Data.OleDb。 16、SQL SERVER数据库有哪两种连接模式? 【参考答案】 1、混合模式连接

使用此种连接模式必须输入登录名和登陆口令。 例 如 :

String myconnection=\

SqlConnection conn = new SqlConnection(myconnection); 2、windows模式连接

以windows连接模式必须将trusted_connection=true

string myconnection = \ trusted_connection=true\

SqlConnection conn = new SqlConnection(myconnection); 16、什么是数据绑定?简述其工作原理。 【参考答案】

数据绑定是使页面上控件的属性与数据库中的数据产生对应关系,使得控件的属性值与数据库的变动同步。数据绑定技术就是把已经打开的数据集中某个或某些字段绑定到组件的某些属性上面的一种技术。 数据绑定技术将显示控件的某个属性与数据源绑定在一起,每当数据源中的数据发生变化时,被绑定对象中显示的数据信息也自动随之变化更新。 17、什么是数据源控件,ASP.NET共包含哪几种数据源控件? 【参考答案】

数据源组件是ASP.NET数据访问的核心,它只负责管理与实际数据存储源的连接,并不呈现于任何用户界面。数据源组件是ADO.NET对象与数据绑定控件的中间桥梁,为数据绑定控件构造了一个公共接口,并使得它们绑定到数据源而无需代码。对于数据访问而言,数据存储格式分为三种:基于关系数据模型的表格格式、基于XML的分层格式以及中间层业务对象,共有4类相应的数据源控件:SqlDataSource控件(连接关系型数据库),AccessDataSource控件(用于检索 Microsoft Access数据库中的数据),ObjectDataSource控件(用于接受中间层业务对象提供的数据),XmlDataSource控件(用于读取XML文件或XML字符串)。

18、列举ASP.NET 页面之间传递值的几种方式? 【参考答案】

(1)使用QueryString, 如....?id=1; response. Redirect().... (2)使用Session变量 (3)使用Server.Transfer

19、请说明在.net中常用的几种页面间传递参数的方法,并说出他们的优缺点。 【参考答案】

QueryString 传递一个或多个安全性要求不高或是结构简单的数值。但是对于传递数组或对象的话,就不能用这个方法了。 session(viewstate) 简单,但易丢失,作用于用户个人,过量的存储会导致服务器内存资源的耗尽。application 对象的作用范围是整个全局,也就是说对所有用户都有效。其常用的方法用Lock和UnLock 。cookie 简单,但可能不支持,可能被伪造 Cookie是存放在客户端的,而session是存放在服务器端的。而且Cookie的使用要配合ASP.NET内置对象Request来使用 input ttype=\简单,可能被伪造 url参数简单,显示于地址栏,长度有限Server.Transfer 把流程从当前页面引导到另一个页面中,新的页面使用前一个页面的应答流 数据库稳定,安全,但性能相对弱。 20、Global.aspx文件在ASP.NET网站中有什么作用? 【参考答案】

Global.asax 文件,有时候叫做 ASP.NET 应用程序文件,提供了一种在一个中心位置响应应用程序级或模块级事件的方法。可以使用这个文件实现应用程序安全性以及其它一些任务。Global.asax 文件是 ASP.NET 应用程序的中心点。它提供无数的事件来处理不同的应用程序级任务,比如用户身份验证、应用程序启动以及处理用户会话等。

四、程序填空题

1.(1)

(1) “D:\\Inetpub\\www\\App_Data\\PSWeb.mdb;” (2) ExcuteReader() (3) dr.Read() (4) conn.close();

(5) Response.Redirect(“main.aspx”); (2)

(1) ListBox2.Items.Clear() (2) ListBox2.Items (3) ListBox1.Items[i] (4) Remove

(5) ListBox1.Items[i]. 2.

(1) !IsPostBack

(2) INSERT INTO (或小写) (3) Sql

(4) ExecuteNonQuery(); (5) Close()

(6) SELECT * FROM (或小写) (7) ORDER BY (或小写) (8) Fill (9) DataSource (10) DataBind(); 3.

(1) System.Data.SqlClient; (2) str

(3) SELECT * FROM (4) Dr.Read() (5) Cm2 (6) Close()

(7) us.Text!= null && pas.Text != null (8) ExecuteReader() (9) us.Text (10) pas.Text 4. (1)

(1)” test1.asp” (2)\

(3)\

(4)request.form(\(5)age >= 18 (2)

(1) VarNumber=” ” (2) varNumber+1

(3) Response.Cookies(“number”) (4) Response.Cookies(“number”).Expir (5) varNumber 5.(1)

(1) Request.Form(\(2) Session(\(3) Request.Form(\(4) Session(\

(5) Response.Redirect \(2)

(1)!IsPostBack (2)m_Sqlconn (3)Close (4)SqlConnection (5)lblResult.Text

五、论述题

1、试述ASP.NET对数据输入的验证以服务器验证为主,浏览器端验证为辅的原因? 【参考答案】

其原因有:第一,由于相当一部分客户端的设备功能弱,不具备验证能力,此时验证工作只能放在服务器端进行;第二,恶意的用户能够比较容易地破坏客户端的验证脚本,或者想方设法绕过客户端的校验。

因此,从安全的角度出发,除非人为地取消了服务器端验证,不论客户端是否进行了验证,服务器端的验证都是不可缺少的。当用户向服务器提交数据之后,服务器都毫无例外地调用验证程序来逐个检查用户的输入。如果发现任何输入数据有错误时,整个页面将自行设

置为无效状态,并发出错误信息。但是如果可能(IE4.0以上)有的辅助功能可以先在浏览器中执行,以提高系统的运行效率。

2、论述ASP.NET 4.0的数据源控件有几种类型?各用于访问什么类型的数据。 【参考答案】

数据源控件有5种类型,分别可以用于访问数据库(database)、平面文件(flat file)、各种对象(Object)以及XML文件等。它们是:

AccessDataSource数据源控件;Microsoft Access数据库是微软提供的小型数据库 SqlDataSource数据源控件;此控件还能够用来访问Oracle、ODBC、OLE DB等大型数据库

ObjectDataSource数据源控件;通过这个控件可以连接和处理数据库、数据集、DataReader或任意其他对象

XMLDataSource数据源控件;访问和处理XML文件 SiteMapDataSource数据源控件。可用来访问网站文件

3、论述当网站采用三层架构时,这三层架构是如何分工的,有什么优点。 【参考答案】

网站采用三层架构时,整个应用系统分为三层:表示层-业务层-数据访问层(含数据库)。 在三层架构中,客户端网页是表示层,负责用户界面的显示,其他非显示(非UI)的逻辑处理部分(包括业务规则或商业逻辑)都集中放在中间层中。后台则负责数据的存储和管理。这样的分工不仅思路清晰,代码重用度高,而且一旦商务逻辑或业务规则需要改变时,只需对中间层进行修改而不需要分别对各个网页进行修改。这样做有利于系统的维护和扩展,还可防止各窗体中出现不一致的现象

4、论述为了使得网站众多张网页显示风格一致,ASP.NET 4.0使用了哪些技术,每种技术从哪些方面使得显示风格一致的。 【参考答案】

ASP.NET 2.0提供的主题、用户控件和母版页技术,从统一服务器控件的外貌、局部再到全局风格的一致提供了最佳的解决方案。

主题中的皮肤文件定义服务器控件的外貌,再加上级联样式表用来定义HTML的标签。由皮肤、样式再加上相关的图像组成的主题实际上代表着一种显示风格。

用户控件(User Control)是一种自定义的组合控件,用户控件可以应用于多张网页中,从而保证了这些网页的外貌在局部上保持一致;

母版页是基于全局性的界面设计。用户控件通常被嵌入到母版页中一起使用。 5、简述ASP.NET 4.0的事件模型,系统采用什么方式来减少信息往返次数的。 【参考答案】

ASP.NET 2.0中对事件处理的原则是: (1)基于服务器处理事件;

(2)尽量减少事件处理中信息往返的次数; (3)调用浏览器执行辅助功能。

为了减少事件处理中信息往返的次数,系统采用了以下的策略,即客户端发生的事件,并不是每发生一次就向服务器传送一次信息。默认情况下,只有当服务器端按钮(Button)被点击时,才集中向服务器传递事件信息。其他支持改变(Change)事件的服务器端控件,如文本框、下拉列表框、单选按钮、复选框等,当它们的Change事件发生时,先将事件的信息暂时保存在客户端的缓冲区中,等到下一次向服务器传递信息时(点击按钮时),再和其他信息一起发送给服务器。以减少传送信息的频度。

如果有的控件的Change事件需要立即得到响应时,只需要将该控件的AutoPostBack的属性设为true即可。

本文来源:https://www.bwwdw.com/article/yho6.html

Top