Asp课后习题答案

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第1章

1.简要叙述Web窗体编程模型与MVC编程模型的特点和优缺点。

【答】

Web窗体编程模型的最大优势是易理解、上手快,非常适合利用它内置的Web服务器控件开发Web应用程序。但是它还有最突出的问题,主要体现在以下两个方面。

新版本的Web窗体为了兼容旧版本,使Web服务器控件封装的功能变得越来越臃肿,这在一定程度上影响了程序运行的效率。另外,HTML5、CSS3以及各种优秀开源架构的推出,也让【Web窗体】提供的Web服务器控件变得越来越无用。

随着大型Web应用程序项目的分工越来越细,【Web窗体】编程模型使大型Web项目的单元测试工作变得非常棘手。

在这种情况下,微软又推出了开源的、基于测试驱动的【MVC】编程模型。

MVC编程模型的特点

l 任务分离

l 基于测试驱动的开发

l 对HTML5和CSS3的操控能力高

MVC编程模型的优点:MVC设计模式可以方便开发人员分工协作,提高开发效率,增强程序的可维护性和拓展性...而且还利用Controller将Model与View分离,降低它们之间的耦合度. MVC编程模型的缺点:增加了系统结构和实现的复杂性。视图与控制器间的过于紧密的连接视图对模型数据的低效率访问。目前,一般高级的界面工具或构造器不支持MVC模式。

2.简要回答什么是区域,区域的作用是什么?如何从主页导航到区域?

【答】

区域是将大型Web应用程序划分为各自独立的模块。

区域的作用是既可以让模块功能各自独立,又可以让这些不同的模块共享相同的资源(如图像文件、.css文件、js文件等),同时还能在某个模块中调用其他模块的功能。

从主页导航到区域可以使用Html.ActionLink方法,并用类似的代码:@Html.ActionLink("例1-各章布局示意", "Index", "ch01NavDemos", new { id = "LayoutDemo" }, null),并且区域内引用设定的布局页,代码类似为:

@{

Layout = "~/Areas/Chapter01/Views/Shared/_ch01Layout.cshtml";

}。

第2章

1.什么是路由? MVC是如何实现路由匹配的?

路由(Route)是指映射URL到处理程序的模式。在 MVC中,所有用户请求都要先经过路由系统,才能找到控制器中对应的操作方法(Action Method)。即用户在览器的地址栏中输入网址并按回车键后,客户端就会向服务器发送HTTP请求,服务器则通过路由解析这一请求,从而找到对应的操作方法。

MVC定义了一个全局路由表(RouteTable),路由表中的每个Route对象都包含一个路由模板。对于每个HTTP请求来说,URL路由系统都会遍历路由表找到与当前URL模式相匹配的Route对象,然后再利用它进一步解析出路由数据(RouteData)。

2.Razor视图引擎有什么特点?

Razor视图引擎具有如下特点。

(1)混合编程。利用Razor视图引擎,可以直接在视图(包括视图页、布局页、分部页等)中混合使用C#代码和HTML、CSS以及JavaScript代码。

(2)语法简洁。利用Razor视图引擎,在视图文件(扩展名为.cshtml的文件)中,只需要用一个字符“@”就可以表示C#的语句块或者C#的内联表达式,这与jQuery用一个“$”符号来调用JavaScript脚本有异曲同工之妙,唯一的区别是C#代码是在服务器上执行,jQuery 代码是在客户端执行。

(3)与.NET框架的融合。利用Razor视图引擎,可在视图中直接调用框架的所有功能以及所有.NET类库,而且在VS2013开发环境下键入HTML、CSS、脚本以及C#代码时,都具有丰富的智能提示和语法着色。

(4)有效防止脚本攻击。Razor视图引擎默认自动对网页中输入的字符串进行HTML编码,以防止客户端脚本攻击。

3.什么是Bootstrap,Bootstrap与jQuery是什么关系?

Bootstrap是Twitter公司的开发人员研制的一种开源的、移动设备优先的自适应Web前端开发框架,该架构在jQuery的基础上,实现了移动设备优先的自适应界面显示,其目标是为Web开发人员提供一个最简单的设计形式,来解决不同设备访问时所带来的屏幕自适应问题。

jQuery是一种开源的用JavaScript编写的库函数。而Bootstrap是在jQuery的基础上开发的Web前端开发框架,其本质就是利用CSS和JavaScript以及jQuery代码,为Web开发人员提供不同的自适应界面样式控制。

第3章

1.简要说明ViewBag和ViewData的主要区别和联系。

【答】

ViewData属性是一个System.Web.Mvc.ViewDataDictionary对象,这是一个不区分大小写的由“键/值”对组成的字典集合。ViewBag属性是ViewData属性的另一种表示形式,该属性返回的是一种动态数据类型(dynamic)。ViewBag和ViewData在功能上的作用完全相同,两者都是利用ViewDataDictionary对象传递数据到视图,使用时任选其中之一即可。

有一种情况除外,就是当“键”包含空格等特殊字符时(比如用英文人名作为“键”时,中间会有空格),此时只能用ViewData属性来实现。

一般在控制器中通过ViewBag定义要传递给视图的数据,在视图(Views)中再通过ViewBag 获取并呈现这些数据。

2.举例说明如何在控制器中返回ViewResult对象和PartialViewResult对象。

【答】

public ViewResult Index(string id)

{

return View(id); //返回用id指定的视图

}

相关文档
最新文档