zoukankan      html  css  js  c++  java
  • asp.net MVC URL Routing问题 关于routes.MapRoute()方法

    asp.net MVC URL Routing问题 关于routes.MapRoute()方法的参数问题

    2012-01-16 17:00 netspirits | 分类:其他编程语言 | 浏览2540次
    VS2010 MVC3模板建立的项目,默认这么写
    routes.MapRoute(
    "Default", // 路由名称
    "{controller}/{action}/{id}", // 带有参数的 URL
    new { controller = "Home", action = "Index", id = UrlParameter.Optional } // 参数默认值
    );
    一切没问题,启动项目就能找到默认页面。
    但是换个写法,如下
    routes.MapRoute(
    "Default", // 路由名称
    "{a}/{b}/{id}", // 带有参数的 URL
    new { controller = "Home", action = "Index", id = UrlParameter.Optional } // 参数默认值
    );

    就不能识别默认页那条路由。。。。这是什么原因。。
    想请问下,"{controller}/{action}/{id}"必须这么写吗?不能替换成{a}{b}{c}吗?
    还有 new { controller = "Home", action = "Index", id = UrlParameter.Optional }必须这么写吗? 能不能写成new { a= "Home", b= "Index", x = UrlParameter.Optional }

    这两者到底哪儿是固定,哪儿是必须对应的啊。有什么对应关系啊。。。郁闷死了。。
    2012-01-16 17:18 提问者采纳
    必须要{controller}/{action}的,其他的参数不要求。你说的参数可以这么写:
    {controller}/{action}/{a}-{b}-{c}..... ,明白?另外最后一部分是倒着解析的,如:
    规则{controller}/{action}/{a}-{b}-{c},一个url是 user/center/1-2-3-4,解析结果为controller=user,action=center,c=4,b=3,a=1-2;明白吧?
  • 相关阅读:
    js截取字符串区分汉字字母代码
    List 去处自定义重复对象方法
    63. Unique Paths II
    62. Unique Paths
    388. Longest Absolute File Path
    41. First Missing Positive
    140. Word Break II
    139. Word Break
    239. Sliding Window Maximum
    5. Longest Palindromic Substring
  • 原文地址:https://www.cnblogs.com/wahaccp/p/3252265.html
Copyright © 2011-2022 走看看