ASP.NET MVC5 高级编程 第2章 控制器

参考资料《ASP.NET MVC5 高级编程》第5版

第2章 控制器

控制器:响应用户的HTTP 请求,并将处理的信息返回给浏览器。

2.1 ASP.NET MVC 简介

MVC 模式中的控制器(controller)主要负责响应用户的输入,并且在响应时修改(Model)。通过这种方式,MVC 中的Controller 主要关注的是应用程序流,输入数据的处理,以及对相关视图(View)数据来源的提供

MVC 模式中 URL 首先告诉路由去实例化哪个控制器,调用哪个方法,并为该方法提供需要的参数。然后控制器决定使用哪个视图,并对该视图进行渲染。

URL 并不与Web 服务器上的文件系统有直接对应关系,而是与控制器类的方法有关。MVC 提供的方法调用的结果,而不是动态生成的页面。

tips:

  • 利用方法 HttpUtility.HtmlEncode 来预处理用户输入可以阻止用户用链接向视图中注入JavaScript 代码或 HTML 标记。 比如:www.meishizouqi.com?<script> window.location=‘http://www.example.com‘ <script>

参考资料《ASP.NET MVC5 高级编程》第5版

时间: 2024-12-14 04:28:20

ASP.NET MVC5 高级编程 第2章 控制器的相关文章

ASP.NET MVC5 高级编程 第3章 视图

参考资料<ASP.NET MVC5 高级编程>第5版 第3章 视图 3.1 视图的作用 视图的职责是向用户提供界面. 不像基于文件的框架,ASP.NET Web Forms 和PHP ,视图本身并不被访问,浏览器,并不能直接指向一个视图并渲染它.相反视图被控制器渲染,因为控制器提供了渲染所需要的数据. 一般情况下,控制器需要向视图提供一些信息,所以这会传递一个数据转移对象,叫做模型.完成这一过程需要两部分操作,其中一个是检查由控制器提交的模型对象,另一个是将其内容转化为HTML格式. 3.2

ASP.NET MVC5 高级编程 第5章 表单和HTML辅助方法

参考资料<ASP.NET MVC5 高级编程>第5版 第5章 表单和HTML辅助方法 5.1 表单的使用 5.1.1 action 和 method 特性 默认情况下,表单发送的是 HTTP Post 请求 EF 对于外键关系,数据库名称等也有约定.这些约定取代了以前需要提供给一个关系对象映射框架的所有映射和配置. GET 方法:GET 请求的所有参数都在URL中,因此可以为GET 请求建立书签. POST 方法:浏览器把输入值放入 HTTP 请求的主体中. 5.2 辅助方法 可以通过视图的H

ASP.NET MVC3 高级编程(第5章) 孙远帅 译

第5章 表单和HTML辅助方法 本章内容简介: * 理解表单 * 如何利用HTML辅助方法 * 编辑和输入的辅助方法 * 显示和渲染的辅助方法 顾名思义,HTML辅助方法是用来辅助HTML开发的.这里可能有一个疑问:诸如向文本编辑器中输入HTML元素如此简单的任务,还需要任何帮助吗?输入标签名称是很容易的事情,但是确保HMTL页面链接中的URL指向正确的位置.表单元素拥有可用于模型绑定的合适的名称和值,以及当模型绑定失败时,其他元素能够显示相应的错误提示消息,这些才是使用HMTL的难点. 实现所

ASP.NET MVC5高级编程 之 视图

1.1理解视图约定 当创建一个项目模版时,可以注意到,项目以一种非常具体的方式包含了一个结构化的Views目录.在每一个控制器的View文件夹中,每一个操作方法都有一个同名的视图文件与其对应.这就提供了视图与操作方法关联的基础. 1 public ActionResult Index() 2 { 3 return View(); 4 } 视图选择逻辑在/Views/ControllerName目录(这里就是去掉Controller后缀的控制器名)下查找与操作方法同名的视图.此处选择的是/View

ASP.NET MVC5高级编程 之 表单

1.1 action和method特性 表单是包含输入元素的容器,其中包含按钮.复选框.文本框等元素.表单中的这些输入元素使得用户能够向页面中输入信息,并把输入的信息提交给服务器.数据的提交依赖于action和method. action特性用以告知Web浏览器信息发送到哪里,所以action包含一个URL.这里的URL可以是相对的,也可以使绝对的. 1 <form action="http://www.bing.com/search"> 2 <input name=

ASP.Net MVC 5 高级编程 第7章 成员资格、授权和安全性

第7章 成员资格.授权和安全性 7.1 安全性 ASP.NET MVC 提供了许多内置的保护机制(默认利用 HTML 辅助方法和Razor 语法进行 HTML编码以及请求验证等功能特性,以及通过基架构建的控制器白名单表单元素来防止重复提交攻击) 永远不要相信用户提交的任何数据. 实际的例子 每次渲染用户提交的数据的时候对其进行编码. 考虑好网站哪些部分允许用户匿名访问,哪些部分需要认证访问. 不要试图自己净化用户的HTML 输入,否则就会失败. 在不需要通过客户端脚本访问cookie时,使用HT

moon。  使用会话维持状态--基于java web高级编程第5章 使用会话维持状态

5.1 提出的问题 如何关联来自客户的多个请求? 5.1.1维持状态 会话用于维护请求和请求之间的状态.HTTP是无状态的 从服务器角度,当用户的Web浏览器打开第一个链接到服务器的套接字时请求就开始了,直到服务器返回最后一个数据包并关闭连接时,该请求结束. 此时,浏览器与服务器之间没有任何联系,当下一次请求链接开始时,无法将下一次请求与之前的请求关联起来. 购物车中,每次向购物车中添加商品时,网站通过什么方式了解到它们都是来自于同一个基选集中的同一浏览器,并将它关联到你的浏览器,其他人是 无法

【读书笔记】C#高级编程 第六章 数组

(一)同一类型和不同类型的多个对象 如果需要使用同一类型的多个对象,就可以使用数组或集合(后面章讲). 如果需要使用不同类型的多个对象,可以使用Tuple(元组)类型. (二)简单数组 如果需要使用同一类型的多个对象,可以使用数组.数组是一种结构,它可以包含同一类型的多个元素. 1.数组的声明 在声明数组时,应先定义数组总元素的类型,其后是一堆空方括号和一个变量名. 例子: 以下代码声明了一个包含整形类型的数组 int[] intArray; 2.数组的初始化 声明了数组后,就必须为数组分配内存

《ASP.NET MVC高级编程(4版)》读书笔记(5)表单和HTML辅助方法

5.1 表单使用 5.1.1 action 和 method 特性 <form action="/Home/Index"> <input name="q" type="text"/> <input value="提交" type="submit" /> </form> 如果没有 method 默认是: get 方法. 5.1.2 GET 方法还是 POST 方