题目:如何在View中写一个超级连接连接到主页?

这个问题看起来很好回答:

<a href="/home/index">首页</a>

其实上面这种不能称之为方案的写法其实是最好的,没有调用任何的方法,仅用纯的HTML就解决了问题。

但是如果Route规则改变了那怎么办呢?就像原来的

routes.MapRoute( "Default", "{controller}/{action}/{id}", new { controller = "Home", action = "Index", id = "" } );

改为了

routes.MapRoute( "Default", "{controller}/{action}.htm", new { controller = "Home", action = "Index" } );

扩展名变了,如果按上个答案那连接就要改为

<a href="/home/index.htm">首页</a>

如果项目中涉及到此Route规则的引用有很多的话,那么这么批量的改肯定会累死人的,而且还容易出错

那我们应该怎么办呢?

所以我们就要用UrlHelper

<a href="<%=Url.Action("Index","Home")%>">;首页</a>   这样在Route规则变化的情况下也会得到正确的地址跳转

上面的方法使Url可以应对变化,可是还有一个问题就是href=”<%=%>”这种方式在VS中是很难智能感知和调试的,所以要有一种很好的调试方式于是就产生了最初的HtmlHelper

<%=Html.Action("首页","Index","Home")%>

这样就可以方便智能感知及调试了,而且代码也比较干净

最新文章

  1. java开源时间/日期库Joda-Time
  2. NEC学习 ---- 布局 -两列定宽
  3. 回车键转tab键
  4. gem install factory_girl
  5. github 添加 C# IGNORE
  6. 【tarjan】BZOJ 1051:受欢迎的牛
  7. Android上按钮解决快速点击问题
  8. ndroid网络(4):HttpClient必经之路----使用线程安全的单例模式HttpClient,及HttpClient和Application的融合
  9. pwd显示链接文件的真实路径
  10. linux环境下Vim的配置
  11. iOS 程序初始一个带导航栏的视图
  12. Tooltip浮动提示框效果(掌握里面的小知识)
  13. 从“思考”的角度来看如何成为一名优质的Java架构师
  14. 网站加速与Linux服务器防护
  15. gensim LDA模型提取每篇文档所属主题(概率最大主题所在)
  16. Unity 自定义导入时切割Sprite
  17. Edusoho之LNMP环境搭建
  18. .net中的设计模式---单例模式
  19. loadrunner controller如何执行测试
  20. Android典型界面设计(6)——ActionBar Tab+ViewPager+Fagment实现滑动导航

热门文章

  1. A WCF-WPF Chat Application
  2. Properties vs. Attributes
  3. hadoop2.2编程:DFS API 操作
  4. JavaScript几种类工厂实现原理剖析
  5. 第一章 用three.js创建你的第一个3D场景
  6. (转载)常用JS加密编码算法 五:SHA1算法
  7. selenium webdriver(5)---超时设置
  8. Oracle错误
  9. bzoj 1069 [SCOI2007]最大土地面积(旋转卡壳)
  10. Bzoj 1042: [HAOI2008]硬币购物 容斥原理,动态规划,背包dp