电子商务课后答案.docx

上传人:b****7 文档编号:23928271 上传时间:2023-05-22 格式:DOCX 页数:23 大小:26.38KB
下载 相关 举报
电子商务课后答案.docx_第1页
第1页 / 共23页
电子商务课后答案.docx_第2页
第2页 / 共23页
电子商务课后答案.docx_第3页
第3页 / 共23页
电子商务课后答案.docx_第4页
第4页 / 共23页
电子商务课后答案.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

电子商务课后答案.docx

《电子商务课后答案.docx》由会员分享,可在线阅读,更多相关《电子商务课后答案.docx(23页珍藏版)》请在冰豆网上搜索。

电子商务课后答案.docx

电子商务课后答案

第一章

1、请比较静态网页和动态网页的工作原理。

答:

静态网页和动态网页在客户端看来是除了发送请求是的后缀名外没有其它任何区别,主要是服务器端的区别。

静态网页服务器在接收了客户端的请求后直接读取相应的网页文件返回给客户端,而动态网页服务器在接收到了客户端发来的请求后先找到相应文件然后根据相应参数将文件编译成标准的html代码,再返回给客户端。

4.小王正在家里访问搜狐网站,此时,谁是服务器端,谁是客户端?

答:

搜狐网站的服务器是服务器端,因为它提供网页服务;而小王的电脑就是客户端了。

第二章

三、问答题

1.简要回答什么是HTML和XHTML.

HTML超文本标记语言,是一种基于标记的网页设计语言。

XHTML是为了适应XML而重新改造的HTML,也是一种标记语言。

它可以看作是从HTML到XML的过渡。

XHTML要求在网页中出现的任何元素都应该被标记出来。

第三章

三、问答题

1.C#中值类型与引用类型之间的区别是什么?

答:

值类型和引用类型的区别在于,值类型的变量直接存放实际的数据,而引用类型的变量存放的则是数据的地址,即对象的引用。

值类型变量直接把变量的值保存在堆栈中,引用类型的变量把实际数据的地址保存在堆栈中,而实际数据则保存在堆中。

注意,堆和堆栈是两个不同的概念,在内存中的存储位置也不相同,堆一般用于存储可变长度的数据,如字符串类型;而堆栈则用于存储固定长度的数据,如整型类型的数据int(每个int变量占用四个字节)。

由数据存储的位置可以得知,当把一个值变量赋给另一个值变量时,会在堆栈中保存两个完全相同的值;而把一个引用变量赋给另一个引用变量,则会在堆栈中保存对同一个堆位置的两个引用,即在堆栈中保存的是同一个堆的地址。

在进行数据操作时,对于值类型,由于每个变量都有自己的值,因此对一个变量的操作不会影响到其它变量;对于引用类型的变量,对一个变量的数据进行操作就是对这个变量在堆中的数据进行操作,如果两个引用类型的变量引用同一个对象,实际含义就是它们在堆栈中保存的堆的地址相同,因此对一个变量的操作就会影响到引用同一个对象的另一个变量。

第四章

三、问答题

3.ASP.NET的网页代码模型有几种?

各有何特点?

答:

有两种即单文件页模型和代码隐藏页模型。

在单文件页模型中,页的标记及其编程代码位于同一个后缀为.aspx的文件中。

代码隐藏页模型与单文件页模型不同的是,代码隐藏页模型将事物处理代码都存放在单独的cs文件中,当ASP.NET网页运行的时候,ASP.NET类生成时会先处理cs文件中的代码,再处理.aspx页面中的代码。

第五章

三、问答题

1.简要说明HTML表单和Web表单之间的区别?

答:

HTML表单是静态网页中定义的表单,只在浏览器端运行,用于向服务器提交用户的请求。

WEB表单是ASP.NET中的表单,是在服务器上运行的。

WEB表单也是用标记定义的。

WEB表单标记中有一个重要的属性:

Runat=”Server”。

正是这个属性使WEB表单与HTML表单有了本质的不同。

2.普通的HTML标记、HTML服务器控件、Web服务器控件有什么联系和区别?

HTML服务器控件和WEB服务器控件都是从普通HTML发展过来的,只要给普通HTML代码添加id和runat=server属性就变成了HTML服务器控件,WEB服务器控件是.net提供的一套全新的控件,它的设计合理使用更简便,但是目前还没有和HTML完全一一对应。

推荐使用WEB服务器控件。

3.什么时候该使用HTML标记、HTML服务器控件、Web服务器控件?

在不需要和服务器端交互的程序中应该尽量使用普通html代码,这样会减轻服务器负担,在需要交互时尽量使用web服务器控件,实在没有可用的web服务器控件再考虑html服务器控件。

4.如何使多个RadioBUtton控件具有互斥作用?

答:

若要使多个RadioButton控件具有互斥作用,只需要将这些RadioButton控件的GroupName设置到同一个标识符即可。

利用这个特性,可以将分散在页面各个位置的RadioButton控件成组,产生互斥。

第六章

三、问答题

3.Application对象的lock()和unlock()方法在什么情况下使用,只用其中的一种方法行吗,为什么?

答:

Application对象是网站的应用程序可以共享的,而网站程序可能同时会有多个用户访问,那么可能出现多个用户同时访问某个保存在Application对象中的变量的问题。

当多个用户同时需要修改Application中某个变量时,还有可能产生数据不一致的问题。

为了避免这种情况的发生,Application对象提供了两个方法:

Lock和UnLock。

当需要修改某个Application对象中保存的变量值时,先用Lock方法将Application对象锁住,禁止其它用户修改Application对象中的变量值,然后再对变量值进行修改。

修改结束后,再用UnLock方法把锁打开。

这样就避免了访问冲突的问题。

Lock和UnLock方法必须成对使用。

如果只用了Lock方法而不用Unlock,则获得资源的用户永远占有Application,不释放,导致其它用户无法得到Application。

没有Lock方法使用Unlock也是无意义的。

4.Application对象、Session对象和Cookie对象都是保存数据的,三者有什么区别?

答:

Application是保存在服务器内存中的数据,可以让所有用户来共享,如用来制作简单的记数器或聊天室等。

Session是保存特定用户的数据,对该用户起作用,一旦该用户退出或关机,则数据自然就消失了,主要用于来判断用户是否登录等。

Cookie是保存在用户硬盘中的数据,一般用来保存登录的用户名与口令等,这样用户以后登录中可以省去输入的麻烦。

第七章

三、问答题

4.Connection对象和Command对象有什么区别?

答:

应用程序使用Connection对象连接数据库。

可以使用Command对象直接在连接的环境中访问数据库中的数据。

Command对象使用SQL语句或者存储过程来检索数据。

命令通过连接进行传输,以流的形式返回结果集,流可以被DataReader读取或被写入DataSet对象。

10.DataSet和DataAdapter有什么区别?

答:

DataSet在断开连接的缓存中存储数据。

DataSet的结构与关系数据库的结构相似;它公开由表、行和列组成的分层对象模型。

DataAdapter对象作为DataSet和数据源之间检索或保存数据的桥梁。

DataAdapter类表示一组数据库命令和可用作填充DataSet和更新数据源的数据库连接。

第八章

三、问答题

1.答:

ASP.NET包含一些数据源控件,这些数据源控件允许您使用不同类型的数据源,如数据库、XML文件或中间层业务对象。

数据源控件连接到数据源,并使得数据绑定控件可以绑定到数据源而无需编写代码。

数据源控件还实现了丰富的数据检索和修改功能,其中包括查询、排序、分页、筛选、更新、删除以及插入。

ASP.NET3.5提供了6个数据源控件,如书8.1节的表8-1所示。

3.答:

Repeater控件不具备内置的布局或样式能力,用户必须通过创建模板为Repeater控件提供布局。

由于Repeater控件没有默认的外观,因此可以使用该控件创建许多种列表,包括:

表格布局、逗号分隔的列表(例如,a、b、c、d等)和XML格式的列表。

DataList控件默认情况下以表格的形式显示数据,DataList控件的优点是用户可以为数据创建任意格式的布局。

显示数据的格式在创建的模板中定义。

可以为项、交替项、选定项和编辑项创建模板。

表头、脚注和分隔符模板也用于自定义DataList的整体外观。

通过在模板中添加Button和LinkButton等控件,可将列表项连接到代码,这些代码使用户得以在显示、选择和编辑模式之间进行切换。

DataList控件在很多方面超过了Repeater,主要在图形布局领域。

DataList支持直接生成,意味着项目可以以垂直或水平的方式显示,以匹配指定的列数。

此外,它提供了用于检索与当前数据行关联的键值的设置,并且内在支持选择和原地编辑。

此外,DataList控件支持更多的模板。

4.答:

ListView是"全世界最好的"控件,结合了GridView丰富的功能集和对Repeater提供的标记的控制。

ListView使得可以以不同的格式显示数据,包括网格(像GridView那样的行和列)、项目列表(类似于本章前面建立Repeater的方式)、流格式(其中所有项一个接一个地放在HTML中,您可编写一些CSS对其进行格式化)。

ListView结合了GridView丰富的功能集和对Repeater提供的标记的控制。

ListView使得可以以不同的格式显示数据,包括网格(像GridView那样的行和列)、项目列表(类似于本章前面建立Repeater的方式)、流格式(其中所有项一个接一个地放在HTML中,您可编写一些CSS对其进行格式化)

5.答:

传统的数据绑定是一种“连接数据绑定”,即在数据绑定期间,客户端一直保持与数据库的连接,这种状态下,数据库的性能大受影响。

的数据绑定是一种“非连接数据绑定”,即只在读取和更新数据的瞬间,才与数据库连接并交换数据,之后便可释放与数据库的连接,数据库的性能因此将大大提高。

6.答:

后台的Rowdatabound事件可以进行绑定,比如

if(数据行)

{

DropDownListddl=(DropDownList)e.row.FindControl("DropDownListID");

ddl.datasource=数据源;(假定你已经设置了key和value绑定字段)

ddl.databind();

}

7.答:

在ASP.NET中,服务器控件可以直接与数据源进行交互(如显示或修改数据),ASP.NET称这种技术为数据绑定技术。

它可以把Web窗体页(包括其控件或其他元素)和数据源无缝地连接到一起,增强了页与数据源的交互能力。

数据绑定技术可以分为简单数据绑定技术和复杂数据绑定技术。

10.答:

数据绑定方法Eval方法取属性的名称(例如,表列的名称)为参数,并返回其内容。

Eval方法仅用于只读的单向数据绑定情况。

它实现了数据读取的自动化,但是没有实现数据写入自动化。

Bind()方法支持双向数据绑定—既能把数据绑定到控件,又能把数据变更提交到数据库。

它实现了数据读取的自动化,也实现了数据写入自动化。

第十章

三、问答题

1.答:

(1)以过程为中心和对象为中心的比较

结构化编程方法是以过程为中心的,当面对一个问题时,该方法侧重于问题解决过程的层次结构。

面向对象的分析和设计方法侧重于对象。

对象具有特定的行为和属性,行为和属性决定了对象与其他对象的交互作用方式,以及对象本身的行为方式。

(2)公开数据和隐藏数据的比较

结构化编程方法对数据和过程仅仅进行简单的包装,这些数据和过程是公开的,或者说程序中的其他代码可以访问这些数据和过程。

面向对象的实现隐藏了特定的数据,并且只把对象的特定行为公开给用户。

实现这些特定行为的代码对用户来说是不可见的,用户只能访问这些公开的行为。

(3)单一单元和标准单元的比较

结构化编程方法是基于单一代码单元的。

面向对象的编程方法允许对象是独立的。

(4)一次性使用和可重用的比较

根据不同的实现,结构化过程可能无法重用。

而面向对象的方法,对象是一个模块单元。

具有完备的实体,因此可以具有高度的可重用性。

(5)有序算法和无序算法的比较

结构化编程方法所开发的程序,其结构往往是线性的(或者说是自顶向下的)。

而面向对象的应用程序是一种基于消息或者事件驱动的程序类型。

每个对象都可以向其他对象发送消息。

Windows操作系统就是这样的程序。

2.答:

首先,在系统的性能方面。

只要拥有可上网的浏览器,就可以使用B/S系统。

不过,B/S结构的客户端只能完成浏览、查询、数据输入等简单功能,绝大部分工作要由服务器承担,这就对服务器提出了很高的要求,无形中增加了用户在这一方面的投入。

采用C/S结构时,客户端和服务器都承担部分工作,有效利用了客户端和服务器端的资源,使用户不必在硬件上有更多的投入。

另外,浏览器页面不便于修改,这为用户定制自己的文件时带来了不便,比如用户想自定义一个报表,用B/S结构的系统就比较难完成。

其次,在系统的开发方面,C/S结构的开发对开发者提出了较高的要求,整个开发过程比较复杂。

与B/S结构相比,C/S技术的历史更为“悠久”,从技术成熟度和开发人员普遍掌握的水平来看更为成熟。

第三,系统升级方面。

C/S结构中若有某一模块发生改变,可能要关联到其它模块的变动,使系统升级的成本较大;而B/S结构在开发、维护阶段几乎所有的工作都集中在服务器端,只需更新服务器端的软件就可以了。

如果系统升级比较频繁,那么B/S架构的产品就具维护工作量少的优势。

第四,安全性方面。

在安全性上,B/S结构则略显不足,毕竟现在网络安全系数不高,只要拥有密码,任何人都可以进入到用户的系统中;而C/S结构由于需要特定的客户端软件,并且一般来说都要对客户端加密,甚至可以限定只有某一台计算机可以使用这个客户端,因而对安全性有更多的保障。

6.答:

一般为3层:

数据访问层,业务层,表示层。

数据访问层对数据库进行增删查改。

业务层一般分为二层,业务表观层实现与表示层的沟通,业务规则层实现用户密码的安全等。

表示层为了与用户交互例如用户添加表单。

优点:

分工明确,条理清晰,易于调试,而且具有可扩展性。

缺点:

增加成本。

8.答:

利用SQL关键字对网站进行攻击、过滤关键字等。

代码部分

1、编写一个控制台应用程序,接收一个长度大于3的字符串,完成下列功能:

(1)输出字符串的长度

(2)输出字符串中第一个出现字母a的位置

(3)在字符串的第三个字符后面插入子串“hello”,输出新字符串

(4)将字符串“hello”替换为“me”,输出新字符串

(5)以字符“m”为分隔符,将字符串分离,并输出分离后的字符串

usingSystem;

classTest6

{

publicstaticvoidMain()

{

  stringstr="";

  while(str.Length<=3)

  {

Console.Write("请输入一个长度大于3的字符串:

");

str=Console.ReadLine();

}

//

(1)

Console.WriteLine("字符串的长度为:

{0}",str.Length);

//

(2)

inti=str.IndexOf('a');

if(i>-1)

{

Console.WriteLine("第一个出现字母a的位置是:

{0}",i);

}

  else

{

Console.WriteLine("字符串中不包含字母a。

");

}

//(3)

stringstr1=str.Insert(3,"hello");//在第3个(初始序号为)字符前插入hello

Console.WriteLine("插入hello后的结果为:

{0}",str1);

//(4)

stringstr2=str1.Replace("hello","me");

Console.WriteLine("将hello替换为me后的结果为:

{0}",str2);

//(5)

string[]arr=str2.Split('m');

Console.WriteLine("以m为分隔符分离后的字符串有:

");

for(intj=0;j

{

Console.WriteLine(arr[j]);

}

}

}

2、设计一个ASP.NET网页。

该网页用一个TextBox控件输入内容,当内容输入完毕后,立即将输入的内容在标签上显示出来,并将该内容添加到下拉列表框中。

添加一个按钮,当单击该按钮时,将下拉列表框中的每一项内容都变成复选框列表的一个选项。

Default.aspx

<%@PageLanguage="C#"AutoEventWireup="true"CodeFile="Default.aspx.cs"Inherits="_Default"%>

DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http:

//www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

//www.w3.org/1999/xhtml">

无标题页

请输入内容

TextBoxID="TextBox1"runat="server"style="margin-left:

17px">

TextBox>


lable标签内容:

LabelID="Label1"runat="server"Text="Label">

Label>



DropDownListID="DropDownList1"runat="server">

ListItemValue="默认为空">

ListItem>

DropDownList>


ButtonID="Button1"runat="server"onclick="Button1_Click"Text="Button"/>


CheckBoxListID="CheckBoxList1"runat="server">

ListItemValue="默认为空">

ListItem>

CheckBoxList>

Default.aspx.cs

usingSystem;

usingSystem.Configuration;

usingSystem.Data;

usingSystem.Linq;

usingSystem.Web;

usingSystem.Web.Security;

usingSystem.Web.UI;

usingSystem.Web.UI.HtmlControls;

usingSystem.Web.UI.WebControls;

usingSystem.Web.UI.WebControls.WebParts;

usingSystem.Xml.Linq;

publicpartialclass_Default:

System.Web.UI.Page

{

protectedvoidPage_Load(objectsender,EventArgse)

{

Label1.Text=TextBox1.Text;

stringstr=Label1.Text;

DropDownList1.Items.Add(newListItem(str,str));

}

protectedvoidButton1_Click(objectsender,EventArgse)

{

strings="";

for(inti=0;i

{

s=DropDownList1.Items[i].Text;

CheckBoxList1.Items.Add(newListItem(s,s));

}

}

}

3、请综合使用本章介绍的控件,开发一个个人注册页面。

要求输入用户名、密码、出生日期、电话、E-mail等个人信息,并进行必要的验证。

//www.w3.org/1999/xhtml">

个人信息注册

.style1{width:

94px;}

.style2{width:

449px;}

.style3{width:

94px;height:

25px;}

.style4{width:

449px;height:

25px;}

.style5{height:

25px;}

308px">

100%;position:

static">

        姓名:

TextBoxID="姓名"runat="server"Width="193px">

TextBox>

RequiredFieldValidatorID="RequiredFieldValidator1"runat="server"ErrorMessage="姓名不能空!

"ControlToValidate="姓名">

RequiredFieldValidator>

        

性别:

RadioButtonID="RadioButton1"runat="server"Text="男"Checked="true"/>

      

RadioButtonID="RadioButton2"runat="server"Text="女"GroupName="Sex"/>

        年龄:

TextBo

展开阅读全文
相关搜索

当前位置:首页 > 人文社科 > 文化宗教

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1