一、单选题(共50题,每题2分)
1、ASP.NET MVC4 的核心架构模式是什么?
 A. MVP
 B. MVVM
 C. MVC
 D.三层架构
 答案:C
2、在 MVC4 中,默认的路由配置文件名是?
 A. Global.asax
 B. RouteConfig.cs
 C. Web.config
 D. BundleConfig.cs
 答案:B
3、以下哪个方法用于在视图中输出未编码的 HTML 内容?
 A. @Html.Raw()
 B. @Html.Encode()
 C. @Html.TextBox()
 D. @Html.Display()
 答案:A
4、在 Razor 视图中,如何定义一个代码块?
 A. <% %>
 B. @{}
 C. <? ?>
 D. @{ }
 答案:D
5、ActionResult 的派生类不包括以下哪个?
 A. ViewResult
 B. JsonResult
 C. FileResult
 D. StringResult
 答案:D
6、MVC4 中用于异步控制器的基类是什么?
 A. AsyncController
 B. ControllerAsync
 C. TaskController
 D. AsyncAction
 答案:A
7、以下哪个属性用于限制 HTTP 请求方法?
 A. [HttpPost]
 B. [HttpGet]
 C. [AcceptVerbs]
 D. 以上都是
 答案:D
8、在路由配置中,{controller}/{action}/{id} 的默认 id 值是什么?
 A. 0
 B. null
 C. Optional
 D. 空字符串
 答案:C
9、哪个工具用于合并和压缩 CSS/JS 文件?
 A. Bundling
 B. Minification
 C. 以上都是
 D. 以上都不是
 答案:C
10、默认的视图引擎是?
 A. Web Forms
 B. Razor
 C. Spark
 D. NHaml
 答案:B
11、哪个方法用于注册全局过滤器?
 A. GlobalFilters.Add()
 B. FilterConfig.RegisterFilters()
 C. Application_Start()
 D. 以上都是
 答案:B
12、以下哪个是 ASP.NET MVC4 新增的功能?
 A. Web API
 B. 移动开发模板
 C. 异步控制器
 D. 以上都是
 答案:D
13、如何定义区域(Areas)?
 A. 右键项目 → 添加 → Area
 B. 手动创建 Areas 文件夹
 C. 使用 NuGet 安装
 D. 以上都不是
 答案:A
14、模型验证的属性 [Required] 属于哪个命名空间?
 A. System.ComponentModel.DataAnnotations
 B. System.Web.Mvc
 C. System.Web.Helpers
 D. System.Data.Entity
 答案:A
15、以下哪个是 Razor 视图中输出变量的语法?
 A. <%= Variable %>
 B. @Variable
 C. {{Variable}}
 D. $Variable
 答案:B
16、ASP.NET MVC4 中,模型绑定的默认行为是通过什么实现的?
 A. 表单字段名称与模型属性名称匹配
 B. 手动赋值
 C. XML 配置文件
 D. JSON 序列化
 答案:A
17、哪个方法用于在控制器中重定向到另一个 Action?
 A. RedirectToAction()
 B. RedirectToRoute()
 C. Redirect()
 D. 以上都可以
 答案:D
18、以下哪个是 MVC4 默认的布局文件(Layout)路径?
 A. ~/Views/Shared/_Layout.cshtml
 B. ~/Views/Home/_Layout.cshtml
 C. ~/Content/_Layout.cshtml
 D. ~/Scripts/_Layout.cshtml
 答案:A
19、在 Razor 视图中,如何注释代码块?
 A. @* 注释内容 *@
 B. <!-- 注释内容 -->
 C. // 注释内容
 D. /* 注释内容 */
 答案:A
20、哪个属性用于防止 CSRF(跨站请求伪造)攻击?
 A. [ValidateAntiForgeryToken]
 B. [Authorize]
 C. [HttpPost]
 D. [ValidateInput]
 答案:A
21、以下哪个类用于实现自定义路由约束?
 A. IRouteConstraint
 B. RouteBase
 C. RouteValueDictionary
 D. UrlParameter
 答案:A
22、在 MVC4 中,如何注册区域(Areas)的路由?
 A. 自动注册
 B. 在 AreaRegistration 派生类中调用 RegisterAllAreas()
 C. 手动修改 Global.asax
 D. 无需注册
 答案:B
23、哪个方法用于在视图中生成超链接到指定 Action?
 A. @Html.ActionLink()
 B. @Url.Action()
 C. @Html.RouteLink()
 D. 以上都是
 答案:D
24、模型验证中,[Range(1, 100)] 的作用是?
 A. 限制字符串长度
 B. 限制数值范围
 C. 必填字段
 D. 正则表达式验证
 答案:B
25、在 MVC4 中,依赖注入(DI)通常通过什么实现?
 A. IDependencyResolver
 B. IHttpHandler
 C. IModelBinder
 D. IFilterProvider
 答案:A
26、哪个方法用于在视图中包含另一个部分视图?
 A. @Html.Partial()
 B. @Html.RenderPartial()
 C. 以上都是
 D. 以上都不是
 答案:C
27、ASP.NET MVC4 中,Web API 的默认返回格式是?
 A. XML
 B. JSON
 C. HTML
 D. 纯文本
 答案:B
28、哪个类用于处理异步 Action 的 Task<ActionResult>?
 A. AsyncManager
 B. TaskAsyncHelper
 C. AsyncController
 D. 无需特殊类
 答案:D(MVC4 异步 Action 直接支持 Task)
29、如何禁用某个 Action 的客户端验证?
 A. [ValidateInput(false)]
 B. [ClientValidationEnabled(false)]
 C. 修改 Web.config
 D. 无法禁用
 答案:A
30、哪个 NuGet 包用于添加 MVC4 的 Entity Framework 支持?
 A. Microsoft.AspNet.Mvc
 B. Microsoft.AspNet.EntityFramework
 C. EntityFramework
 D. Microsoft.EntityFrameworkCore
 答案:C
31、在 Razor 视图中,如何输出 URL 编码后的字符串?
 A. @Html.TextBox()
 B. @Html.Encode()
 C. @Url.Encode()
 D. @Html.Raw()
 答案:B
32、模型绑定中,TryUpdateModel 方法的作用是?
 A. 强制更新模型
 B. 尝试更新模型并返回是否成功
 C. 仅验证模型
 D. 序列化模型
 答案:B
33、哪个方法用于在视图中调用子动作(Child Action)?
 A. @Html.Action()
 B. @Html.RenderAction()
 C. 以上都是
 D. 以上都不是
 答案:C
34、ASP.NET MVC4 中,默认的模型绑定器是?
 A. DefaultModelBinder
 B. JsonModelBinder
 C. XmlModelBinder
 D. FormModelBinder
 答案:A
35、以下哪个属性用于在 Action 方法中接收上传的文件?
 A. [HttpPost]
 B. [FileUpload]
 C. HttpPostedFileBase
 D. [FromBody]
 答案:C
36、如何禁用某个视图的布局文件(Layout)?
 A. @{ Layout = null; }
 B. @{ Layout = ""; }
 C. 删除 _ViewStart.cshtml
 D. 以上都可以
 答案:A
37、哪个接口用于实现自定义依赖注入容器?
 A. IDependencyResolver
 B. IControllerFactory
 C. IHttpHandler
 D. IModelBinder
 答案:A
38、在 Razor 视图中,如何定义一个匿名对象作为 HTML 属性?
 A. @Html.TextBox("name", new { @class = "form-control" })
 B. @Html.TextBox("name", htmlAttributes: new { @class = "form-control" })
 C. @Html.TextBox("name", class = "form-control")
 D. @Html.TextBox("name", attributes: "form-control")
 答案:B
39、ASP.NET MVC4 中,默认的 JSON 序列化库是?
 A. Newtonsoft.Json
 B. System.Text.Json
 C. DataContractJsonSerializer
 D. JavaScriptSerializer
 答案:A
40、哪个属性用于在 Action 方法中直接读取请求体中的原始数据?
 A. [FromBody]
 B. [FromUri]
 C. [FromForm]
 D. [FromHeader]
 答案:A
41、在 MVC4 中,TempData 的生命周期是?
 A. 当前请求
 B. 下一个请求
 C. 会话期间
 D. 永久有效
 答案:B
42、哪个方法用于在视图中生成表单的隐藏字段(AntiForgeryToken)?
 A. @Html.Hidden()
 B. @Html.AntiForgeryToken()
 C. @Html.ValidationToken()
 D. @Html.SecurityToken()
 答案:B
43、ASP.NET MVC4 中,移动设备专用视图的命名约定是?
 A. ViewName.mobile.cshtml
 B. ViewName.Mobile.cshtml
 C. Mobile.ViewName.cshtml
 D. ViewName_Mobile.cshtml
 答案:A
44、关于 Html.Partial() 和 Html.RenderPartial() 的区别,正确的是?
 A. 前者返回 MvcHtmlString,后者直接输出到响应流
 B. 前者需要 @{ } 包裹,后者直接调用
 C. 两者功能完全相同
 D. 后者仅用于异步视图
 答案:A
45、如何为 Action 方法指定自定义路由模板?
 A. [Route("custom/route")]
 B. [CustomRoute]
 C. [ActionName("Custom")]
 D. 无法指定
 答案:A(需结合 RouteAttribute 使用)
46、在 Global.asax 中,BundleConfig.RegisterBundles() 的调用位置是?
 A. Application_Start()
 B. Application_End()
 C. Session_Start()
 D. Application_Error()
 答案:A
47、哪个属性用于限制 Action 只能通过子动作调用?
 A. [ChildAction]
 B. [NonAction]
 C. [ChildActionOnly]
 D. [InternalOnly]
 答案:C
48、ASP.NET MVC4 中,默认的视图文件扩展名是?
 A. .aspx
 B. .cshtml
 C. .vbhtml
 D. .html
 答案:B
49、模型验证的 [Compare("Password")] 属性用于?
 A. 比较两个字段的值是否相同
 B. 验证密码复杂度
 C. 检查字段长度
 D. 验证邮箱格式
 答案:A
50、Web API 中,返回 HTTP 状态码 404 的方法是?
 A. return NotFound();
 B. return HttpNotFound();
 C. return StatusCode(404);
 D. 以上都可以
 答案:A(Web API 使用 NotFound())
二、多选题(共10题,每题2分)
1、以下属于 MVC4 过滤器类型的有?
 A. Authorization Filter
 B. Action Filter
 C. Exception Filter
 D. Result Filter
 答案:ABCD
2、路由参数可以包含哪些属性?
 A. defaults
 B. constraints
 C. namespaces
 D. dataTokens
 答案:ABCD
3、以下哪些是 ActionResult 类型?
 A. RedirectResult
 B. PartialViewResult
 C. ContentResult
 D. JavaScriptResult
 答案:ABCD
4、关于 BundleConfig,正确的描述是?
 A. 用于合并 CSS/JS 文件
 B. 需要在 Global.asax 中注册
 C. 支持动态压缩
 D. 仅适用于调试模式
 答案:ABC
5、ASP.NET MVC4 支持的验证方式包括?
 A. 客户端验证
 B. 服务端验证
 C. 模型绑定验证
 D. 数据库约束验证
 答案:ABC
6、以下哪些是 ASP.NET MVC4 中的 ActionResult 类型?
 A. EmptyResult
 B. HttpStatusCodeResult
 C. RedirectToRouteResult
 D. FileContentResult
 答案:ABCD
7、关于模型绑定,以下描述正确的有?
 A. 支持复杂对象嵌套绑定
 B. 可以通过 [Bind] 属性限制绑定字段
 C. 仅支持 POST 请求
 D. 可以自定义模型绑定器
 答案:ABD
8、以下哪些是 Razor 视图中的 HTML Helpers?
 A. @Html.TextBoxFor()
 B. @Html.CheckBox()
 C. @Html.DropDownList()
 D. @Html.ValidationSummary()
 答案:ABCD
9、ASP.NET MVC4 中,以下哪些是 Web API 的特性?
 A. 基于 REST 风格
 B. 支持内容协商(Content Negotiation)
 C. 仅返回 JSON 数据
 D. 独立于 MVC 控制器
 答案:AB
10、以下哪些是 MVC4 中常用的 NuGet 包?
 A. jQuery.Validation
 B. Microsoft.AspNet.Web.Optimization
 C. Newtonsoft.Json
 D. Microsoft.AspNet.WebApi
 答案:ABCD