ASP.NET复习题+解析

ASP.NET程序设计复习题

一.填空题 

(1)ASPX网页的代码储存模式有两种,它们是代码分离模式单一模式

(2)当一个Web 控件上发生的事件需要立即得到响时,应该将他的 AutoPostBack 属性设置为true 。

(3) 请将下列数据(nn )在TextBox 控件中显示出来。

Double nn = 4512.6;

TextBox1.Text = nn.Tostring();

(4) 下面是一个转移到新网页的指令:Response.Redirect(“ 新网页的Url ”)

(5)在设计阶段必须将各个验证控件的ControlToValidate 属性指向被验证的控件。

(6) 下面是设置和取出Session 对象的代码。

设置Session 的代码是:

Session[“greeting”]=“hello wang !”;

取出该Session 对象的语句如下:

string Myvar= Session[“greeting”].ToString()

(7)ASP.NET网站在编译时,首先将语言代码编译成 微软中间语言MSIL

(8)下面是使用Application 对象时防止竞争的代码。

Application. lock() ; //锁定Application 对象

Application[“counter”]=(int) Application[“counter”]+1;

Application. unlock() ; //解除对Application 对象的锁定

(9) 打开文件系统网站时将自动打开一个 开发 服务器,这是一个轻量级服务器,可以用来对程序进行检查和调试工作。

(10) 改变Session 的有效时间的语句是: Session.Timeout=60;

(11)面向对象的语言具有继承性、多态性、封装性

(12).net Framework 是vs.net 开发平台的基础,它包括两个主要组件:.netFramework 类库和 公共语言运行库(CLR ) 。

(13)Asp和asp.net 的主要区别表现在 运行机制 、速度和功能3个方面。

(14)安装.net 的必备组件式iis 和 .NET Framework SDK

(15)公共语言规范是公共类型系统的 子集 ,是一组结构和限制,是库编写者和编译者的指南。

(16).net Framework从低到高由 公共语言运行库 、基类库、类库和应用程序开发技术四层组成。

(17)运行asp.net 需要安装和配置.NET Framework 和IIS 。

(18)通过在IIS 中建立 虚拟目录 可以访问asp.net web应用程序。

(19)列举ASP.NET 中的七个内置对象:Page、Response、Request、Session、Cookie、Server、Application。

(20)URL的中文意思是指统一资源定位符。 

(21) 控件TextBox 的AutoPostBack 属性的作用是是否响应服务器事件,值为true/false

(22) Server.MapPath()方法的主要功能是获取文件的绝对路径。

(23)Command 对象ExecuteNOQuery()方法的功能是返回SQL 语句影响行数,值为int

(24)在SQLConnection 对象中可以使用ConnectionString属性来获取或设置打开SQL 数据库的连接字符串。

(25)在操作数据库时有查询、更新和删除等操作,在ADO.NET 中一般使用Command对象来完成。

(26)数据读取器DataReader 对象是一个简单的数据库,用于从数据源中检索只读、只进的数据流。

(27)ADO.NET允许以两种方式从数据库中检索数据;一种是使用DataReader 对象;第二种是使用DataAdapter对象

(28)DataSet 对象的基本组成包括3各部分: Tables、Relations 和ExtendedPropesties 。

(29) Asp.net 配置系统包括服务器配置和应用程序配置,服务器配置信息存储在machine.config 文件中,应用程序配置信息存储在web.config文件中。

(30).NET Framework主要包括 公共语言运行库CLR 和  类库。 

(31)一台IIS Web服务器IP地址为210.78.60.19,网站端口号为8000,则要访 问虚拟目录xxxy中default.aspx的URL为  http://210.78.60.19.8000/xxxy/default.aspx。 

(32)可以通过 复制网站 同步网站上的一个文件。

(33) Visual Studio 2008 默认建立的XHIML文件类型是Transitional。 

(34) 利用XHTML建立一个链接到[email protected]邮箱的元素是

[email protected]">……。 

(35) 存放Web窗体页C#代码的模型有单文件页模型和代码隐藏页模型

(36) 单文件页模型中,C#代码必须包含于之间。 

(37) 外部样式表通过元素链接到网页。

(38) XML主要用于传输和存储数据。

(39) C#使用的类库就是 . NET Framework提供的类库。 

(40) 要在一个类中包含System.Data命名空间的语句是using System.Data。 

(41) 使用static修饰符能调用未实例化得类中的方法。 

(42) C#中的数据类型包括值类型和引用类型

(43) 枚举类型是由一组命名常量组成的类型。 

(44) 在C#统一类型系统中,所有类型都是直接或间接地从System.Object继承。

(45) 装箱实质是把值类型转化为引用类型。 

(46) 至少会执行一次循环的循环语句是do-while语句

(47) 较适用于已知循环次数的循环语句是for语句。 

(48) 如果类名为UserInfo,那么它的构造函数名为UserInfo。 

(49) 继承可以重用现有类的数据和行为,并扩展新的功能。

(50)在TextBox控件中输入内容并当焦点离开TextBox控件时能触发TextChanged事件,应设置属性  AutoPostBack="True"。 

(51)判断页面是否第一次载入可通过属性  IsPostBack  实现。 

(52)ASP.NET 3.5 的服务器控件包括 HTML服务器控件和 Web服务器控件。 

(53)添加属性  runat="server" 可将XHTML元素转化为HTML服务器控件。

(54)设置属性 Enabled 可决定Web服务器控件是否可用。 

(55)当需要将TextBox控件作为密码输入框时,应设置TextMode="Password"。 

(56)对使用数据源显示信息的Web服务器控件,当设置完控件的属性DataSource后,需要方法 DataBind() 才能显示信息。 

(57)如果需要将多个单独的RadioButton控件形成一组具有RadioButtonList控件的功能,可以通过将属性 GroupName 设置成相同的值实现。  

(58)窗体验证包括  客户端服务器端 两种形式。 

(59)判断页面的属性 IsValid值可确定整个页面的验证是否通过。 

(60)若页面中包含验证控件,可设置按钮的属性 CausesValidation="false"  ,使得单击该

按钮后不会引发验证过程。 

(61)若要对页面中包含的控件分成不同的组进行验证,则应设置这些控件的属性 ValidationGroup 为相同值。

(62)通过正则表达式定义验证规则的控件是 RegularExpressionValidator   。 

(63)设置属性  ControlToValidate  指定被验证控件的ID。 

(64) 从http://10.200.1.23/custom.aspx?ID=4703中获取ID值的方法

 Request.QueryString["ID"]

(65) 要获取客户端IP地址,可以使用  Request.ServerVariables["Remote_ADDR"]   。

(66) 终止ASP.NET网页执行可以使用  Response.End()          。 

(67) 要获取网页default.aspx物理路径可以使用  Server.MapPath("default.aspx")  。 

(68) 状态管理具有      客户端服务器端   两种方式。 

(69) 设置Button类型控件的属性  PostBackUrl  值可确订单击按钮后跳转到相应网页。 

(70) Session对象启动时会触发  Session_Start  事件。 

(71) 设置绘画有效时间为10分钟的语句是  Session.TimeOut=10; 。

(72)若设置浏览器禁止Cookie,要有效地识别用户可以在 web.config  中加入

  。 

(73) 要对Application状态变量值修改之前应使用  Application.Lock() 

(74)数据源空间包括 AccessDataSource、LinqDataSource、ObjectDataSource、SqlDataSource、XmlDataSource和SiteMapDataSource。 

(75)连接数据库的信息可以保存在Web.config文件的   配置节中。

(76)利用命令行工具 aspnet_regiis.exe 可以为连接字符串加密。 

(77)能连接“层次化数据”的数据源控件是XmlDataSourceSiteMapDataSourc 

(78)根据数据源的不同,LINQ可分为LINQ to Object、LINQ to SQL、 

LINQ to XML和 LINQ to DataSet  。 

(79)在LINQ to SQL中,将SQL Server数据库映射为  DataContext   类, 表映射为  实体类,存储过程映射为  方法  。 

(80) 数据绑定控件通过属性  DataSourceID  与数据源控件实现绑定。 

(81) 数据绑定控件通过属性  DataSourc  与LINQ查询返回的结果实现绑定。

(82) GridView的属性  AllowPaging  确定是否分页。 

(83) 若设置了ImageFile列的属性DataImageUrlFormatString=“~/pic/{0}”,其中的{0}

由属性   DataImageField  值确定。 

(84) 模板列中实现数据绑定时, Eval()  方法用于单向绑定,Bind()  方法用于双向绑定。 

(85) 实现不同页显示从主从表常利用  查询字符串  传递数据。

(86) ASP.NET3.5提供的身份验证方式包括 Windows验证、Passport验证、None

验证和Forms验证.

(87) 适合于企业内部使用的验证方式是 Windows验证. 

(88)要获取web.config中配置节的属性信息可使用 FormsAuthentication类. 

(89)若要求用户注册是密码至少8位,应设置配置节的

minRequiredPasswordLength="8" 

(90)主体可以包括外观文件、样式表文件和图片文件。 

(91)母版页由特殊的@ Master指令识别,该指令替换了用于普通.aspx网页的@Page指令。 

(92)母版页中可以包含一个或多个可替换内容占位符ContentPlaceHolder控件。 

(93)如果用户要想在网站运行时动态地添加或删除WebPart控件,则需要添加 CatalogZone控件控件。 

(94)内容页通过 MasterPageFile和母版页建立联系。 

(95)网站地图文件的扩展名是sitemap

(96)元素的url属性表示链接目标页的地址。 

(97)若要使用网站导航控件,必须在 Web.sitemap文件中描述网站的结构。

 (98)SiteMapPath控件的属性PathDirection功能是获取或设置导航路径节点的呈现顺序。 

(99)通常称  AJAX   页面为无刷新Web页面。

 (100)AJAX应用程序所用到的技术包括 XMLHttpRequest对象、JavaScript代码、DHTML或Dynamic HTML和文档对象模型DOM。 

(101)ASP.NET AJAX框架由  服务器端AJAX控件  和   客户端脚本库   组成。 

(102)若要使用UpdatePanel控件,则必须添加一个 ScriptManager  控件。

 

 二.是非题 

(1)托管代码是以CLR为基础的代码。(√)

(2)ASP.NET3.5仍使用ASP.NET2.0引擎。(√) 

(3).NET Framework 3.0是.NET Framework 3.5的一部分。(√) 

(4)ASP.NET 3.5是边解释边执行的。(×) 

(5)在Visual Studio 2008环境中开发网站必须安装IIS。(×)

(6) XHTML是HTML的子集。(×) 

(7) XHTML中每个元素都有结束标记。(√) 

(8) .htm文件不需要编译,直接从Web服务器下载到浏览器执即可。(√)

(9) 基于类的样式在定义是要加前缀“#”。(×) 

(10) JavaScript代码必须包含在

 

(45) 用户控件的后缀名是什么,用户控件中能不能有 html、body 或 form 元素?

答:.ascx;不能。

 

(46) TextBox控件除了有单行、多行,还有哪种形式?

答:密码。

 

(47)数据库中有主外键关系,比如用户表和状态表, 状态字段是用户表的外键,模型层怎么表示?

答:为实体类添加状态id属性,存储状态id; 为实体类添加状态属性,存储状态对象。

 

(48) 可否使用ObjectDataSource绑定数据访问层返回的DataSet?

答:可以。

 

(49) 为绑定的行添加脚本事件是什么?

答:RowDataBound事件。

 

(50) 在ASP.NET中,使用验证控件来验证用户输入,要求用户不可跳过该项输入,并且用户输入值在0和1000之间,请写出所需的验证控件?

答:RequiredFieldValidator控件和RangeValidator控件

(51)解释一下UDDI、WSDL的意义及其作用?

答:UDDI是统一描述集成协议,是一套基于Web的,分布式的,为WEB服务提供的信息注册的实现标准规范,同时为也是为企业本身提供的 Web服务注册以让别的企业能够发现并访问的协议标准。提供了基于标准的规范,用于描述和发现服务,还提供了一组基于因特网的实现。WSDL这是一个基于XML的描述WEB服务的接口。

(52) 什么是SOAP?

答:是简单访问协议。是在分布式环境中,交换信息并实现远程调用的协议。是一个基于XML的协议。使用SOAP,可以不考虑任何传输协议,但通常还是HTTP协议,可以允许任何类型的对象或代码,在任何平台上,以任一种语言相互通信。它是一种轻量级协议。

(53) 如何部署一个ASP.net页面?

答:Vs2005可以直接部署到对应的位置。

(54)什么是code-behind技术?

答:aspx and cs

 

(55) 简述ASP.NET中状态保持的三种方式,并说明存储范围 ?

答:

a) Session存储于服务器

b) Cookie存储于客户端

c) Application应用程序级别的状态保持              

(56) .net的错误处理机制是什么?

答:.net错误处理机制采用try->catch->finally结构,发生错误时,层层上抛,直到找到匹配的Catch为止。

(57) 什么叫应用程序域?

答:应用程序域可以理解为一种轻量级进程。起到安全的作用。占用资源小

(58) ASP.net的身份验证方式有哪些?分别是什么原理?

答:Windwos(默认)用IIS...From(窗体)用帐户....Passport(密钥)

 

(59)写出asp.net中至少四个数据源控件?

答:SqlDataSource、OleDbConnection、ObjectDataSource、XmlDataSource

(60)讲一讲你理解的web service,在dot net framework中,怎么很好的结合xml?(讲概念就行了)

答:从表面上看,Web Service就是一个应用程序,它向外界暴露出一个能够通过Web进行调用的API。这就是说,你能够用编程的方法通过Web调用来实现某个功能的应用程序。从深层次上看,Web Service是一种新的Web应用程序分支,它们是自包含、自描述、模块化的应用,可以在网络(通常为Web)中被描述、发布、查找以及通过Web来调用。可扩展的标记语言XML 是Web Service平台中表示数据的基本格式。除了易于建立和易于分析外,XML主要的优点在于它既与平台无关,又与厂商无关。XML是由万维网协会(W3C)创建,W3C制定的XML SchemaXSD 定义了一套标准的数据类型,并给出了一种语言来扩展这套数据类型。Web Service平台是用XSD来作为数据类型系统的。当你用某种语言如VB.NET或C# 来构造一个Web Service时,为了符合Web Service标准,所有你使用的数据类型都必须被转换为XSD类型。如想让它使用在不同平台和不同软件的不同组织间传递,还需要用某种东西将它包装起来。这种东西就是一种协议,如 SOAP。

(61)在一个BS结构中需要传递变量值时,不能使用session,cookie,application,你有几中方法?

答:this.server.Transfer,Querystring.

(62) 为什么要将页面的前台HTML与后台C#代码分开,它们分别被保存在哪个文件中?

答:将页面的前台HTML与后台C#代码分离,将他们分别保存在.aspx文件和.cs文件中。将前后台代码分离,是ASP.NET的一项重要技术,这样使得代码更加清晰,避免前后台代码的纠缠。特别是后台代码从表现代码中分离后,使得程序员可以更加清晰地处理业务逻辑,更加发挥Web程序3层结构的优势。

(63) 当页面上显示的验证错误信息很多时,如何将其集中显示在一个信息框中?

答:当页面上显示的验证错误信息很多时,可以将其集中显示在一个信息框中,以便使得页面更加清晰,节省页面可用的空间。使用ValidationSummary控件可以集中显示页面的所有验证错误信息,方法是将将所有验证控件的Text属性设置为“*”,ErrorMessage属性设置为较详细的提示信息。程序运行后当有验证错误信息出现时,在对应的文本框旁边有星号出现,表示这里有验证错误,详细的错误提示会集中显示在一个信息框中。

(64) 如何使多个RadioButton控件具有互斥作用?

答:若要使多个RadioButton控件具有互斥作用,只需要将这些RadioButton控件的GroupName设置到同一个标识符即可。利用这个特性,可以将分散在页面各个位置的RadioButton控件成组,产生互斥。

(65) 验证控件的验证行为发生在客户端还是服务器端,如何使提交控件不引发验证?

答:验证控件的验证行为一般发生在客户端,其作用是当验证不能通过时,页面不会提交到服务器,减轻网络负担,避免错误数据的侵入。也可以自定义验证控件,那样既可以定义客户端验证,也可以定义服务器端验证。若要使提交控件不引发验证,只要将提交控件的CausesValdation属性设置为false即可。

五、代码分析

1. 下面是某段代码的部分内容,如是要对数据进行双向绑定,请检查是否正确,如果有误,请改正。

    

        

    

答:应把”Eval("Title")”改成“Bind("Title")”

 

2. 有如下一段程序:

发出提交的页面:

获取内容的页面:

if (Page.PreviousPage!=null)

{

if(PreviousPage.IsCrossPagePostBack == true)

{

    this.lblShowURL.Text = "您的查询条件为:" +

        ((TextBox)this.PreviousPage.FindControl("txtKeyWord")).Text;

}

}

请指出上述代码的功能。

答:上述代码的功能是演示跨页数据传递。

 

3. 以下是验证用户登录的代码,请检查代码是否有误,如果有误,请改正:

if(txtName.Text.Trim()=="svse"&& txtPwd.Text.Trim()== "123456")

{

    Session("User“) = "svse";

    Response.redirect("Welcome.aspx");

}

答:应把Session(“User”)改成Session[“User”]。

 

 

4. 根据委托(delegate)的知识,请完成以下用户控件中代码片段的填写:(10)

namespace test

{

     public delegate void OnDBOperate();

     public class UserControlBase : System.Windows.Forms.UserControl

     {

         public event OnDBOperate OnNew;

         privatevoidtoolBar_ButtonClick(object  sender, ToolBarButtonClickEventArgs e)

         {

               if(e.Button.Equals(BtnNew))

               {

                      //请在以下补齐代码用来调用OnDBOperate委托签名的OnNew事件。

               }

         }

      }

}

答:

if( OnNew != null )

OnNew( this, e );

 

5. 下面连接数据库的字符串是否有误,如果有,请指出。

   providerName="System.Data.SqlClient" />

  答:有误,应把” DataSource”改成“Data Source”

 

你可能感兴趣的:(ASP.NET)