ASP NET动态网站开发基础教程习题答案.docx
ChapOl参考答案一、填空题1、WebXMLWebservices2、公共语言运行库、.NETFramework类库3、属性方法事务4、asp×5、cs二、选择题1、ABCD2、ABCD3、AB4、A5、B三、上机操作题1、参考1.3.1。2、参考1.4.2。3、在exl_l.aspx文件中的代码如下所示:<body><formid=,forml"runat="server"><div><asp:ButtonID=nButtonl"runat="server"OnClick="Buttonl_Click"Text="提交"><br><asp±abelID=llLabeIl"runat="server"Text="您单击了0次按钮Width="194px"><asp±abel><div><form><body>在exl_l.aspx.es中的代码如下所示:publicpartialclass_Default:System.Web.UI.Page(privatestaticinti;protectedvoidPage_Load(objectsender,EventArgse)(if(!Page.IsPostBack)i=0;)protectedvoidButtonl_Click(objectsender,EventArgse)(i=i+l;1.abeIlJext="您单击了,+i.ToStringO+”次按钮”;)Ch叩02参考答案一、填空题1、引用类型2、object3、显式4、多态性5、初始化语句右侧二、选择题1、AC2、A3、B4、B5、AC三、上机操作题1、本习题的源代码如下:namespaceex2_l(structstudent(publicstringname;publicstringaddress;publicstringtel;);classProgram(staticvoidMain(stringargs)(studentstu=newstudent5;for(inti=0;i<5;i+)(stui.name=Console.ReadLine();stui.address=Console.ReadLinef);stui.tel=Console.ReadLine();)for(inti=0;i<5;i+)(Console.WriteLine(i.ToString();Console.WriteLine(stui.name);Console.WriteLine(stui.address);Console.WriteLine(stui.tel);Console.ReadLine();2、本习题的源代码如下:namespaceex2_2(classProgram(staticvoidsort(inta,intn)(inttemp;for(inti=1;i<n;i+)for(intj=0;j<n-i;j+)if(aD>aj+l)temp=aj;aU=aj+1;aj+1=temp;)staticvoidMain(stringargs)(intn=5;inta=newint5;for(inti=0;i<5;i+)(ai=Convert.Tolnt32(Console.ReadLine();)sort(azn);for(inti=0;i<5;i+)(Console.WriteLine(ai.ToString();)Console.ReadLine();)3、本习题的源代码如下:namespaceex2_3(classstudent(protectedstringm_name;protectedstringm_sex;protectedfloatm_tuition;publicStudentfstringstrname,stringstrsex,floatftuition)(m_name=strname;m_sex=strsex;m_tuition=ftuition;)virtualpublicvoidprintflnfo()(Console.WriteLine(m_name+""+m_sex+",+m-tuition.ToString();)classgraduate:studentprotectedstringm_tutor;publicgraduate(stringstrname,stringstrsex,floatftuitionzstringstrtutor)base(strnamezstrsex,ftuition)(m_tutor=strtutor;)overridepublicvoidprintflnfo()(base.printflnfo();COnSole.WriteLine("导师是"+mutor);)classProgram(staticvoidMain(stringargs)(studentS=newStUdent("张三"男,5000);graduateg=newgraduated李四,”女,9000,”王五”);s.printflnfo();g.printflnfo();Console.ReadLine();)Chap03参考答案一、填空题1 、Response2、客户端3、服务器4、状态变量5、用户会话二、选择题1、C2、ABCD3>ABCD4、AD三、上机操作题1、在ex_l_Laspx文件中的代码如下所示:<body><formid="forml"runat="server"><div><asp:ButtonID=nButtonl"runat="server"OnClick="Buttonl_Click"Text="提交"><div><form><body>在ex_l_l.aspx.cs文件中的代码如下所示:publicpartialclass_Default:System.Web.U!.PageprotectedvoidPage_Load(objectsender,EventArgse)()protectedvoidButtonl_Click(objectsender,EventArgse)(Response.Redirect("e×-l_2.aspx7name=");)在ex_l_2.aspx.cs文件中的代码如下所示:publicpartialclassex_l_2:System.Web.UI.Page(protectedvoidPage_Load(objectsender,EventArgse)(Response.Write(Request.QueryString,name");)2、在ex2JLaspx文件中的代码如下所示:<body><formid=,forml"runat="server"><div><asp:ButtonID=nButtonl"runat="server"OnClick="Buttonl_Click"Text="提交"><div><form><body>在ex_2_l.aspx.cs文件中的代码如下所示:publicpartialclass_ex_2_l:System.Web.UI.Page(protectedvoidPage_Load(objectsender,EventArgse)()protectedvoidButtonl_Click(objectsender,EventArgse)(SeSSionname”="李四u;Response.Redirect("ex_2_2.aspx");)在ex_2_2.aspx文件中的代码如下所示:<body><formid="forml"runat="server"><div><asp±abelID=nLabeIl"runat="server"Text=nLabeI"Width="143px"><asp±abel><div><form><body>在ex_2_2.aspx.es文件中的代码如下所示:publicpartialclass_ex_2_2:System.Web.UI.PageprotectedvoidPage_Load(objectsender,EventArgse)(1.abeIlJext=Session,name".ToString();)3、在ex_3_l.aspx.cs文件中的代码如下所示:publicpartialclass_ex_3_l:System.Web.UI.Page(protectedvoidPage_Load(objectsender,EventArgse)(Cookiecookiel=Request.Cookies"ttt"if(cookiel=null)(创建一个cookie实例Cookiecookie=newCookie("ttt");添加要存储的信息,接受键/值结合的方式cookie.Values.Add("Name","7bm");cookie.Expires=DateTime.Now-AddYears(I);把cookie加如当前的页面的Response对象里面Response.Cookies.Add(cookie);Response.Redirect("mail.l63");)else(Response.Write(cookiel.Values"Name");)Ch叩04参考答案一、填空题1、System.Web.ULWebControIs2 .设置是否自动向服务器发送数据false用户单击此控件时并不导致向服务器发送页面。3 .编程方式运行时更改页面中的文本4 .标头标题链接链接5 .图像作用点控件的集合二、1.D2.B3.D4.C5.D三、上机操作题1、在ex4jLaspx文件中代码如下所示:< %PageLanguage="C#"AutoEventWireup="true"CodeFile="ex4_l.aspx.cs"Inherits="ex4_l"%>< !DOCTYPEhtmlPUBLIC,W3CDTDXHTML1.0TransitionalEN",:/w3.org/TR/xhtmll/DTD/xhtmll-transitional.dtd"><htmlxmlns=":/w3.org/1999/xhtml"><headrunat="server"><title>演示ComboBox控件的运用<title><head><body><formid="forml"runat="server">请选择您的登录方式:<asp:DropDownListrunat="server"ID="DropDownUstl"AutoPostBack="True"OnSeIectedIndexChanged="DisplayType"><asp:LiStItem>系统管理员<asp:LiStItem><asp:LiStItem>高级用户<asp:LiStItem><asp±istltemSelected="true"一般用户v/asp:LiStItem><asp:LiStItem>游客<asp:LiStltem><asp:DropDownList><p><p>您选择的登录方式为:Osplabelrunat="server"ID="Labell"Text="一般用户"><asp:Label><form><body><html>ex4_l.aspx.cs的代码如下所示:publicpartialclassex4_l:System.Web.UI.Page(protectedvoidPage_Load(objectsender,EventArgse)()protectedvoidDisplayType(objectsender,EventArgse)(1.abeIlJext=DropDownListl.Text;)2、在ex4_2.aspx文件中代码如下所示:<%PageLangUage="C#"AutoEventWireup="true"CodeFile="ex4_2.aspx.cs"Inherits="ex4_2"%>< !DOCTYPEhtmlPUBLIC,W3CDTDXHTML1.0TransitionalEN"":/w3.org/TR/xhtmlVDTD/xhtmll-transitional.dtd"><htmlxmlns=":/w3.org/1999/xhtml"><headrunat=,server"><title>日期选择<title><head><body><formid="forml"runat="server"><div><asp:CalendarID=uCaIendarl"runat="server"ondayrender="Calendarl_DayRender"></asp:Calendar><div><form><body><html>ex4_2.aspx.es的代码如下所示:publicpartialclassex4_2:System.Web.UI.Page(protectedvoidPage_Load(objectsender,EventArgse)()protectedvoidCalendarl_DayRender(objectsender,DayRenderEventArgse)(if(Ie-DayJsOtherMonth&&!e.DayJsWeekend)e.Cell.BackCoIor=System.Drawing.Color.Yellow;elseif(Ie1DayJsOtherMonth&&e.DayJsWeekend)(e.Cell.BackCoIor=System.Drawing-Color.Red;e.DayJsSeIectabIe=false;)3、在ex4_3.aspx文件中代码如下所示:<body><formid="forml"runat="server"><div>请选择您最宠爱的网站<p><p><asp:BulletedListrunat="server"ID="BuIIetedUstl"BuIIetStyIe=nDisc"DispIayMode=nLinkButton"OnClick=",ltemsBulletedList-Click"><asp±istltemValue=":/baidu">百度<asp:LiStItem><asp±istltemValue=":/google">谷歌<asp:LiStItem><asp±istltemValue=":/sina">新浪<asp:LiStItem></asp:BulletedList><p><p>您最宠爱的网站是:<asp±abelrunat="server"ID="Labell"><asp±abel><div><form><body>在ex4_3.aspx.es文件中代码如下所示:publicpartialclassex4_3:System.Web.UI.Page(protectedvoidPage_Load(objectsender,EventArgse)protectedvoidItemsBuIIetedList_Click(objectsender,BulIetecIListEventArgse)(switch(e.Index)(case0:1.abeILlext=,S"break;1.abeIlJext="谷歌”;break;1.abeIlJext="新浪"break;)Chap05参考答案一、填空题1、客户端数据验证服务器端数据验证2、RequiredFieIdVaIidator3、CompareVaIidator4RegularExpressionVaIidator5、 .ascx二、1.D2.D3.ABCD4、C5、AB三、上机操作题1、ex5_l.aspx的源代码如下:< %PageLanguage=nCtt"AutoEventWireup="true"CodeFiIe="ex5_l.aspx.cs"Inherits="ex5_l"%>< !DOCTYPEhtmlPUBLIC,W3CDTDXHTML1.0TransitionalEN"":/w3.org/TR/xhtmlVDTD/xhtmll-transitional.dtcl"><htmlxmlns=":/w3.org/1999/xhtml"><headrunat="server"><title>数字输入<title><head><body><formid="forml"runat="server"><div>请输入:<asp:TextBoxID=llTextBoxl"runat="server"><aspTextBo×><asp:CompareValidatorID=nCompareVaIidatorl"runat="server"ControlTDVaIidate=nTextBoxl"ErrOrMeSSage="只能输入数字类型。"Type="Double',><aspCompareValidator><div><form><body><html>2、ex5_2.aspx的源代码如下:<%PageLangUage="C#"AutoEventWireup="true"CodeFile="ex5_2.aspx.cs"Inherits="ex5_2"%>< !DOCTYPEhtmlPUBLIC,W3CDTDXHTML1.0TransitionalEN",:/w3.org/TR/xhtmll/DTD/xhtmll-transitional.dtd"><htmlxmlns=":/w3.org/1999/xhtml"><headrunat="server"><title>推断口期<title><head><body><formid="forml"runat="server"><div>请输入日期:<br><asp:TextBoxID=nTextBoxl"runat="server"x/asp:TextBox><asp:RangeValidatorID=nRangeVaIidatorl"runat="server"ControlToVaIidate=uTextBoxl"EiTOrMeSSage="所输入日期必需在日期在2023年3月之后"MaximumValue="9999-09,MinimumValue="2023-03"><aspRangeValidator><div><form><body><html>3、身份验证用户控件的源代码如下:<%ControlLanguage="C#"AutoEventWireup="true"CodeFiIe=llIDVaIidate.ascx.cs"Inherits=nIDVaIidate"%><asp:TextBoxID=llTextBoxl"runat="server"x/asp:TextBox><asp:RegularExpressionValidatorID=nRegularExpressionVaIidatorl"runat="server"ControlToVaIidate=nTextBoxl"ErrorMessage="您输入的身份证号码有误,请重新输入!"ValidationExpression="d17d|X|d15"x/asp:RegularExpressionValidator>ex5_3.aspx的源代码如下:< %PageLanguage="C#"AutoEventWireup="true"CodeFile="ex5_3.aspx.cs"Inherits="ex5_3"%><%Registersrc="IDValidate.ascx"tagname=,IDValidate"tagprefix="ucl"%>< !DOCTYPEhtmlPUBLIC,W3CDTDXHTML1.0TransitionalEN",:/w3.org/TR/xhtmll/DTD/xhtmll-transitional.dtd"><htmlxmlns=":/w3.org/1999/xhtml"><headrunat="server"><title>输入身份证号码<title><head><body><formid=,forml"runat="server"><div>请输入您的身份证号码:VuclJDVaIidateID=nIDVaIidatel"runat="server"/><br><br>  <asp:ButtonID=nButtonl"runat="server"Text="提交"><div><form><body><html>Chap06参考答案一、1.ConnectionCommandDataSetCommandDataSetDataReader2 .数据处理ConnectionCommandDataReaderDataAdapter3 .UserID(uid)Password(pwd)用户ID口令4 .SqIDataSourceACCESS密码ACCESS5 .数据叮嘱数据库连接填充DataSet更新数据源DataSet二、1.B2.AC3.A4.A5.ABCD三、上机操作题1、ex6_l.aspx.cs的源代码如下:protectedvoidPage_Load(objectsender,EventArgse)(Stringsqlconn="Provider=MicrosoftJet.OLEDB.4.0;DataSource=E:Databaseasp3.5BasicBookStore.mdb"OIeDbConnectionmyConnection=newOleDbConnection(sqlconn);myConnection.Open();OIeDbCommandmyCommand=newOleDbCommandCseIect*fromBook",myConnection);OIeDbDataReadermyReader;myReader=myCommand.ExecuteReaderO;ReSPOnSe.Write("<h3>运用OIeDbCOmmand类读取数据<h3><hr>");Response.Write("<tableborder=lCeIIspacing=Ocellpadding=2>");Response.Write("<trbgcolor=#DAB4B4>");for(inti=O;i<myReader.FieIdCount;i+)(Response.Write(',<td>"+myReader.GetName(i)+"<td>");)Response.Write("<tr>");while(myReader.Read()(Response.Write("<tr>");for(inti=O;i<myReader.FieIdCount;i+)(Response.Write("<td>"+myReaderi.ToString()+"<td>");)Response.Write("<tr>");)Response.Write("<table>");myReader.Close();myConnection.Close();)2、ex6_2.aspx的源代码如下:<%PageLanguage="C#"AutoEventWireup="true"CodeFile="ex6_2.aspx.cs"Inherits="ex6_2"%><!DOCTYPEhtmlPUBLIC,W3CDTDXHTML1.0TransitionalEN"":/w3.org/TR/xhtmlVDTD/xhtmll-transitional.dtd"><htmlxmlns=":/w3.org/1999/xhtml"><headrunat="server"><title>运用DataAPaPter读取Access数据库<title><head><body><formid="forml"runat="server"><div><h3>运用数据适配器<h3><hr><asp:GridViewid="GridViewl"runat="server"Width="400px"Height="120px"x/asp:GridView><div><form><body><html>Ex6_2.aspx.cs的主要代码如下:protectedvoidPage_Load(objectsender,EventArgse)(stringConnectionStr="Provider=Microsoft.Jet.OLEDB.4.0;DataSource=E:Databaseasp3.5BasicBookStore.mdb"OIeDbConnectionmyConn=newOleDbconnection(ConnectionStr);myConn.Open();OIeDbCommandmyCommand=newOleDbCommandCseIect*fromBook",myConn);OIeDbDataAdapterAdapter=newOIeDbDataAdapterO;Adapter1SeIectCommand=myCommand;DataSetmyDs=newDataSet();Adapter.Fill(myDs);GridViewl.DataSource=myDs.TablesO.DefauItView;GridViewl.DataBind();myConn.Close();)3、ex6_3.aspx.cs的主要代码如下:publicpartialclassex6_3:System.Web.UI.Page(voidCreateXmlDocument(stringfile)(XmIDocumentdoc=newXmIDocumentO;XmIDecIarationXmlDecIaration=doc.CreateXmlDeclaration(,1.0"z,utf-8",null);doc.lnsertBefore(xmlDeclaration,doc.DocumentElement);XmIEIementrootNode=doc.CreateElement("books");doc.AppendChild(rootNode);(XmIEIementparentNode=doc.CreateElement("book");XmIEIementtitle=doc.CreateElement("title");XmITextStrTitIe=doc.CreateTextNode(ASP.NET入门");title.AppendChild(strTitle);parentNode.AppendChild(title);XmIEIementauthor=doc.CreateElement("author");XmITexttxtAuth=doc.CreateTextNode("z");author.AppendChild(txtAuth);parentNode.AppendChild(author);doc.DocumentEIement.PrependChiId(ParentNode);)(XmIEIementparentNode=doc.CreateElement("book");XmIEIementtitle=doc.CreateElement("title");XmITextStrTitIe=doc.CreateTextNode(,'ASP.NET精通");title.AppendChild(strTitle);parentNode.AppendChild(title);XmIEIementauthor=doc.CreateElement("author");XmITexttxtAuth=doc.CreateTextNode("李四”);author.AppendChild(txtAuth);parentNode.AppendChild(author);doc.DocumentEIement.PrependChiId(ParentNode);)doc.Save(Server.MapPath(file);)voidReadXmlFile(stringfile)(获得文件的物理路径stringxml=Server.MapPath(file);XmIDocumentdoc=newXmIDocumentO;doc.Load(xml);XmINodeListelemListl=doc.GetElementsByTagName("books");for(inti=O;i<elemListl.Count;i+)(XmINodebook=elemListli;for(intj=O;j<book.ChildNodes.Count;j+)(XmINodenode=book.ChildNodesj;ReSPonSeArite("<br>名称:"+node.ChildNodes0.InnerText);ReSPOnSe.Write("<br>作者:"+node.ChildNodesl.InnerText);Response.Write("<p><p>");)protectedvoidPage_Load(objectsender,EventArgse)(ReSPonSeMZrite("<h3>起先创建XML文档vh3xhr>");CreateXmlDocument("books.xm');ReSPonSe.Write("成功创建Xml文档!");ReSPOnSe.Write("<h3>读取books.xml文件<h3><hr>");ReadXmlFile("books.xm");)Ch叩07参考答案一、填空题1 .特定数据源ASP.NET网页上的其他控件2 .MicrosoftSQLServerOLEDBODBCOracle3 .MicrosoftAccess4 .数据检索更新功能高级排序分页操作5 .模板二、选择题1.ABC2.ABAB3.BC4、A5、C三、上机操作题1 .ex7_l.aspx的源代码如下所示:<%PageLanguage="C#"AutoEventWireup="true"CodeFile="ex7_l.aspx.cs"Inherits="ex7_l"%><!DOCTYPEhtmlPUBLIC,W3CDTDXHTML1.0TransitionalEN",:/w3.org/TR/xhtmll/DTD/xhtmll-transitional.dtd"><htmlxmlns=":/w3.org/1999/xhtml"><headrunat="server"><title>依据价格排序<title><head><body><formid="forml"runat="server"><div><asp:AccessDataSourceID=uAccessDataSourcel"runat=",server"DataFile="/App_Data/BookStore.mdb"SeIeCtCommand="SELECT名称FROMBook"x/asp:AccessDataSource><asp±istBoxID=nListBoxl"runat="server"DatasourcelD=nAccessDataSourcelnDataTeXtFieId="名称“DataVaIueFieId="名称“Height=,282px"Width="212px,><asp±istBox><div><form><body><html>2 .ex7_2.aspx的源代码如下:<%PageLanguage=nCtt"AutoEventWireup="true"CodeFiIe="ex7_2.aspx.cs"Inherits="ex7_2"%><!DOCTYPEhtmlPUBLIC,W3CDTDXHTML1.0Tra