1.   MVC 的常用特性

1)   System.Web.Mvc.ActionNameAttribute

Ø  该特性用于将当前 Action 名称,改为一个指定的 Action 名称,路由匹配时将匹配指定的 Action 名称,并匹配对应的视图名称。

Ø  在 Action 头部标记该特性,例如:[ActionName("NewTwo")]

2)   System.Web.Mvc.NonActionAttribute

Ø  该特性用于指示当前 Action 不是一个 Action 操作方法,尽管是一个正常的 Action 操作方法,路由也不能正常匹配。

Ø  在 Action 头部标记该特性,例如:[NonAction]

3)   System.Web.Mvc.AllowHtmlAttribute

1.   该特性用于指示当前属性(只能是属性)可以跳过请求验证,允许请求在模型绑定过程中包含 HTML 标记。(强烈建议应用程序显式检查所有禁用请求验证的模型,以防止脚本攻击。)

2.   未使用 AllowHtml 特性提交元素值包含 HTML 标签时,将报如下错误:

3.   使用 AllowHtml 在属性头部标记该特性,例如:[AllowHtml],这样就可以提交包含 HTML 标记的元素了。

4)   System.Web.Mvc.SessionStateAttribute

1.   在 Controller 头部标记该特性,例如:[SessionState(System.Web.SessionState.SessionStateBehavior.ReadOnly)]

2.   该特性用于指定控制器的会话状态,可选值:

1)   Default:使用默认 ASP.NET 逻辑来确定请求的会话状态行为。 默认逻辑是寻找 System.Web.IHttpHandler 中是否存在标记会话状态接口。

2)   Required:为请求启用完全的读写会话状态行为。 此设置将覆盖已通过检查请求的处理程序确定的任何会话行为。

3)   ReadOnly:为请求启用只读会话状态。 这意味着会话状态无法更新。此设置将覆盖已通过检查请求的处理程序确定的任何会话状态行为。

4)   Disabled:未启用会话状态来处理请求。 此设置将覆盖已通过检查请求的处理程序确定的任何会话行为。

5)   System.Web.Mvc.HttpGetAttribute

Ø  该特性用于限制操作方法,以便该方法仅处理 HTTP GET 请求。

6)   System.Web.Mvc.HttpPostAttribute

Ø  该特性用于限制操作方法,以便该方法仅处理 HTTP POST 请求。

7)   System.Web.Mvc.HttpDeleteAttribute

Ø  该特性用于限制操作方法,以便该方法仅处理 HTTP DELETE 请求。

8)   System.Web.Mvc.HttpPutAttribute

Ø  该特性用于限制操作方法,以便该方法仅处理 HTTP PUT 请求。

9)   System.Web.Mvc.HttpPatchAttribute

Ø  该特性用于限制操作方法,使得该方法仅处理 HTTP PATCH 请求。

10)  System.Web.Mvc.HttpOptionsAttribute

Ø  该特性用于限制操作方法,使得该方法仅处理 HTTP OPTIONS 请求。

11)  System.Web.Mvc.HttpHeadAttribute

Ø  该特性用于指定 HTTP 请求必须为 HTTP HEAD 方法。

12)  System.Web.Mvc.ValidateAntiForgeryTokenAttribute

Ø  该特性用于阻止伪造请求的特性。

2.   在 MVC 中访问静态文件

Ø  MVC 默认情况下会将所有请求文件和路径,交给System.Web.HttpNotFoundHandle去处理,以便 Controller 统一控制。例如 View 文件夹加下的 Web.config 配置文件:

<system.webServer>

<handlers>

<remove name="BlockViewHandler"/>

<add name="BlockViewHandler" path="*" verb="*" preCondition="integratedMode" type="System.Web.HttpNotFoundHandler" />

</handlers>

</system.webServer>

Ø  需要访问静态文件,需要在 handlers 节点下添加一个节点,例如:

<add name="StaticFileHandler" verb="GET,HEAD" path="*.html" type="System.Web.StaticFileHandler"/>

或者

<add name="StaticFileHandler" path="*" verb="*" type="System.Web.StaticFileHandler"/>

Ø  这样就可以以绝对路径的方式访问静态文件了。

3.   MVC

ASP.NET MVC 5 笔记的更多相关文章

  1. ASP.NET MVC学习笔记-----Filter2

    ASP.NET MVC学习笔记-----Filter(2) 接上篇ASP.NET MVC学习笔记-----Filter(1) Action Filter Action Filter可以基于任何目的使用 ...

  2. ASP.NET MVC学习笔记-----Filter

    ASP.NET MVC学习笔记-----Filter(1) Filter类型 接口 MVC的默认实现 Description Authorization IAuthorizationFilter Au ...

  3. ASP.NET MVC学习笔记-----Filter(2)

    接上篇ASP.NET MVC学习笔记-----Filter(1) Action Filter Action Filter可以基于任何目的使用,它需要实现IActionFilter接口: public ...

  4. ASP.NET MVC 学习笔记-2.Razor语法 ASP.NET MVC 学习笔记-1.ASP.NET MVC 基础 反射的具体应用 策略模式的具体应用 责任链模式的具体应用 ServiceStack.Redis订阅发布服务的调用 C#读取XML文件的基类实现

    ASP.NET MVC 学习笔记-2.Razor语法   1.         表达式 表达式必须跟在“@”符号之后, 2.         代码块 代码块必须位于“@{}”中,并且每行代码必须以“: ...

  5. ASP.NET MVC 学习笔记-7.自定义配置信息 ASP.NET MVC 学习笔记-6.异步控制器 ASP.NET MVC 学习笔记-5.Controller与View的数据传递 ASP.NET MVC 学习笔记-4.ASP.NET MVC中Ajax的应用 ASP.NET MVC 学习笔记-3.面向对象设计原则

    ASP.NET MVC 学习笔记-7.自定义配置信息   ASP.NET程序中的web.config文件中,在appSettings这个配置节中能够保存一些配置,比如, 1 <appSettin ...

  6. 【MVC5】ASP.NET MVC 项目笔记汇总

    ASP.NET MVC 5 + EntityFramework 6 + MySql 先写下列表,之后慢慢补上~ 对MySql数据库使用EntityFramework 使用域用户登录+记住我 画面多按钮 ...

  7. 【转】ASP.NET MVC学习笔记-Controller的ActionResult

    1. 返回ViewResult public ActionResult Index()   {       ViewData["Message"] = "Welcome ...

  8. ASP.NET MVC学习笔记-----使用自定义的View Engine

    我们都知道在ASP.NET MVC中自带了Razor View Engine,Razor十分的强大,可以满足我们绝大部分的需要.但是ASP.NET MVC的高度可扩展性,使我们可以使用自定义的View ...

  9. ASP.NET MVC学习笔记-----ActionInvoker

    还是这张图: 当ControllerFactory生成Controller实例后,这时就需要使用ActionInvoker来选择调用一个合适的Action执行.ASP.NET MVC提供的基类Cont ...

  10. ASP.NET MVC 学习笔记(1)

    从头开始系统地学习ASP.NET MVC 为什么要学习ASP.NET MVC?原因很多,可以先来看一下最早的ASP.NET WebForm的一些缺点: 传说中面试经常要问到的ASP.NET WebFo ...

随机推荐

  1. 2018 ICPC 焦作网络赛 E.Jiu Yuan Wants to Eat

    题意:四个操作,区间加,区间每个数乘,区间的数变成 2^64-1-x,求区间和. 题解:2^64-1-x=(2^64-1)-x 因为模数为2^64,-x%2^64=-1*x%2^64 由负数取模的性质 ...

  2. 牛客练习赛43 Tachibana Kanade Loves Review C(最小生成树Kruskal)

    链接:https://ac.nowcoder.com/acm/contest/548/C来源:牛客网 题目描述 立华奏是一个刚刚开始学习 OI 的萌新. 最近,实力强大的 QingyuQingyu 当 ...

  3. Yii2 如何输出 sql 语句?

    可以用 $model->find()->createCommand()->getRawSql(); 不能带 all(). find() 它的 返回值类型是 yii\db\Active ...

  4. 微信小程序支付(PHP后端)

    1.申请开通小程序支付,我们正式开通的微信支付是在微信公众平台上,我们需要绑定之前的微信商户平台即可,这一点不过多强调 2.小程序支付开发步骤 (1).统一下单 大家看到微信的统一下单接口密密麻麻的一 ...

  5. A1125. Chain the Ropes

    Given some segments of rope, you are supposed to chain them into one rope. Each time you may only fo ...

  6. 【Asia Yokohama Regional Contest 2018】Arithmetic Progressions

    题目大意:给定 N(1<N<=5000) 个不同元素组成的集合,求从中选出若干数字组成的等差数列最长是多少. 题解:直接暴力有 \(O(n^3)\) 的算法,即:枚举等差数列的前两个值,再 ...

  7. [LNOI2014]LCA(树链剖分+线段树)

    题目链接:https://www.lydsy.com/JudgeOnline/problem.php?id=3626 题解:看到LCA,我们可以直接想到这题的正解不是LCA!(LCA只能得20分,还要 ...

  8. 关于form与表单操作

    form表单自动提交规则 form表单中只有一个type=text的input,在input中按enter键,会自动提交: form表单中有多个type=text的input,且无type=submi ...

  9. Hibernate 基础解析(Configuration,SessionFactory,Session,Transaction,Query,Criteria)

    1       框架体系结构 对象关系映射(英语:(Object Relational Mapping,简称ORM,或O/RM,或O/R mapping),是一种程序技术,用于实 现面向对象编程语言里 ...

  10. 认识EasyUI——DataGrid的onClickRow事件

    关键代码: $("#dg2").datagrid({ onClickRow: function (index, row) { //easyui封装好的时间(被单机行的索引,被单击行 ...