zoukankan      html  css  js  c++  java
  • Cool MVC: 使用正则式限定路由规则Rount 【转】

    这里列出一些基本的关于MVC路由规则的使用正则表达式的例子。
                /*Front*/
                //限定id只能是数字, 长度为0~11
                routes.MapRoute(
                    "Archive",
                    "{user}/Archive/{id}",
                    new { controller = "Blog", action = "Archive", user = "", id = 0 },
                    new { id = @"[\d]{0,11}" }//new { id = @"[\d]*" }//*表示任意长度
                );
    
                //限定page只能是数字, 长度为0~8
                routes.MapRoute(
                    "Archives",
                    "{user}/Page/{page}",
                    new { controller = "Blog", action = "Archives", page=1 },
                    new { page = @"[\d]{0,8}" }
                );
    
                /*Default*/
                //限定controller只能匹配  Home,Blog,About,Admin  
                routes.MapRoute(
                    "Default",                                              // Route name
                    "{controller}/{action}/{id}",                           // URL with parameters
                    new { controller = "Home", action = "Index", id = "" }, // Parameter defaults
                    new { controller =@"Home|Blog|About|Admin"}
                );
    
                /*Blog*/
                //限定user的长度是1~50
                routes.MapRoute(
                    "Blog",
                    "{user}",
                    new { controller = "Blog", action = "Archives", user = "Home" },
                    new { user = @"[\w]{1,50}" }
                ); 
     
    测试:如果用户在浏览器输入http://localhost/bruce/Archive/1 则匹配第一个规则,正确;如果输入http://localhost/bruce/Archive/0123456789120000 或者http://localhost/bruce/Archive/abc 则会显示没有找到对应网页。简单实用的正则表达式!
     
    关于正则表达式可以参考这里学习:http://www.regexlab.com/zh/regref.htmhttp://zh.wikipedia.org/wiki/%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F

    作者:Bruce 编程的艺术世界出处:http://coolcode.cnblogs.com 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    expandafter
    又回到了kde
    朗读软件
    tex bookmarks
    vim命令执行时间
    vim,tex的编译
    utorrent
    火狐的扩展
    linux 无线指示灯闪
    tex溢出报警
  • 原文地址:https://www.cnblogs.com/cxd4321/p/1569617.html
Copyright © 2011-2022 走看看