这节讲 一下ASP.NET MVC中的Helper。

何谓Helper,其实就是在View中为了实现一些灵活功能而写的方法组。

其实ASP.NET MVC的View是Cshtml(Razor 引擎)的页面,本身可以声明定义方法,那为什么要有Helper呢?

其实无非是将界面与逻辑分离,而且Asp.net MVC也并不只支持Cshtml(Razor 引擎)一种View(还可以扩展出来很多),在扩展包中,也有Castle的NVelocity引擎和Boo,以及ViewSpark的页面。

所以,如果在Aspx中定义方法的话会影响其扩展性和可移植性.而且代码也不太好看.

一、UrlHelper.Action

UrlHelper的Action方法 用于生成一个URL地址,它的使用方法为

当前Controller下Index这个Action <%=Url.Action(“Index”)%> index

当前Controller下Index这个Action <%=Url.Action(“Index”,new{id=1})%> index?id=1

EiceController下Index这个Action <%=Url.Action(“Index”,"Eice")%> /eice/index

EiceController下Index这个Action <%=Url.Action(“Index”,"Eice",new{id=1})%> /eice/index?id=1

例如我在View中写Url.Action("Index","Home"),运行后则会生成/Home/Index这个地址,如果你的系统中的URL Routing规则总是变化的话这个Helper则是你必备之选.

二、UrlHelper.Encode

这也是UrlHelper的一个方法 使用方法 如<%=Url.Encode("中文")%>功能与Server.UrlEncode相同,这里不多说了

三、UrlHelper.Content

用于服务器路径转换为绝对路径。

<%=Url.Content("~/content/site.css") %>

最后的结果为

/content/site.css 

如果你有特殊需要可以用3.0新特性,扩展方法来为UrlHelper来增加新的功能,下一节我们讲如何使用Helper来显示Html

转载于:https://www.cnblogs.com/ayzhanglei/archive/2013/01/20/2868381.html

MVC学习第七节 UrlHelper相关推荐

  1. linux协议栈学习 第七节 GRO的实现

    linux协议栈学习 第七节 GRO的实现 GRO (generic receive offload) 概述: GRO是在协议栈接收报文时进行减负的一种处理方式,该方式在设计上考虑了多种协议报文.主要 ...

  2. Vue.js实战之系统学习第七节

    想看上一节的请点击: Vue.js实战之系统学习第六节 接下来我们要学习第七节了,时间过的好快. 组件详解 组件是Vue.js的核心功能,也是整个框架设计最精彩的地方,当然也是最难掌握的.本章节将带你 ...

  3. BurpSuite学习第七节--Sequencer+Decoder

    由于剩下几个模块核心内容较少,因此一次介绍两个模快 一.Sequencer的介绍 Burp Sequencer是一种用于分析数据项样本中随机性质的工具.您可以使用它来测试应用程序的会话令牌或其他意图不 ...

  4. js 声明数组和向数组中添加对象变量 [前端学习 第七节]

    转载文章:http://blog.csdn.net/icanlove/article/details/40818559 数组有四种定义的方式  使用构造函数:  var a = new Array() ...

  5. Kotlin学习笔记 第二章 类与对象 第七节 数据类

    参考链接 Kotlin官方文档 https://kotlinlang.org/docs/home.html 中文网站 https://www.kotlincn.net/docs/reference/p ...

  6. ASP.NET MVC学习之路由篇(2)

    ASP.NET MVC学习之路由篇(2) 原文:ASP.NET MVC学习之路由篇(2) 继ASP.NET MVC学习之路由篇(1)后继续学习. 7.解决与物理路径的冲突 当发送一个请求至ASP.NE ...

  7. MVC教程第七篇:闲话ASP.NET

    MVC教程第七篇:闲话ASP.NET MVC      摘要 本文作为<ASP.NET MVC案例教程>的完结篇,仅从个人角度,发表一些对ASP.NET MVC框架的看法.并且在最后会附上 ...

  8. ROS学习笔记七:使用rqt_console和roslaunch

    ROS学习笔记七:使用rqt_console和roslaunch 本节主要介绍在调试时使用的rqt_console和rqt_logger_level,以及一次性打开多个节点的工具roslaunch. ...

  9. 强化学习(七):n步自举法(多步引导法)

    强化学习(七):n步自举法(多步引导法)   在之前,我们知道求解有限马尔可夫决策过程可以通过蒙特卡洛和时序差分来通过与环境多次交互从经验中学习,然而,蒙特卡洛方法在一些不满足分幕式任务或连续型任务上 ...

  10. 软考-架构师-第三章-数据库系统 第七节 数据库设计(读书笔记)

    版权声明 主要针对希赛出版的架构师考试教程<系统架构设计师教程(第4版)>,作者"希赛教育软考学院".完成相关的读书笔记以便后期自查,仅供个人学习使用,不得用于任何商业 ...

最新文章

  1. 使用 libevent 和 libev 提高网络应用性能
  2. LiveVideoStackCon 2020北京站 | 参会指南
  3. 【LeetCode笔记】27. 移除元素(Java、原地)
  4. java中equals理解(2)
  5. python中main的含义及用法_python中main函数的用法
  6. WebSocket不同版本的三种握手方式以及一个Netty实现JAVA类
  7. WPF Path.Data 后台代码赋值
  8. [2019杭电多校第八场][hdu6667]Roundgod and Milk Tea
  9. c语言静态变量和静态函数
  10. 易建科技eKing Cloud招聘,快到碗里来~
  11. NodeMCU(ESP8266)使用UDP控制8x8点阵显示
  12. 无损音频wav音乐格式怎么转换成mp3格式
  13. 智能语音交互社交APP-导声
  14. 苹果手机如何找回id密码_苹果手机丢失24天后成功找回
  15. 【LTE学习日记01】子载波功率与信道功率的换算
  16. 桩基施工市场现状研究分析报告-
  17. 视频号运营玩法;以及视频号引流变现赚钱。丨国仁网络资讯
  18. 用JSP-Servlet构建三层式管理信息系统
  19. Excel导出功能超时解决方案 -- 异步处理
  20. 51单片机+ESP8266实现手机控制单片机(点亮LED灯)

热门文章

  1. ad15的stc元件库_AltiumDesigner常用元件库
  2. mac 命令 vim 快捷键
  3. linux cd 命令详解,Linux命令详解之–cd命令
  4. 南阳理工acm1043高数
  5. asp.net 微信小程序源码 微信分销源码 源文件完全开源 源码
  6. Excel 插件‘Aspen process data ‘在VBA中的基本使用
  7. 深信服智安全 SCSA---1
  8. 手把手带你免费申请《软件著作权》 超详细计算机软件著作权申请教程 文末送模板
  9. Mybatis拦截器失效
  10. Audio Driver 架构