Lose.zhang 发表于 2013-1-3 17:29:36

基础才是重中之重~你是否真正在用MVC路由功能

<div id="cnblogs_post_body">MVC开发环境为我们提供简单的,友好的,方便的,路由功能,我们可以通过global.asax对它进行URL路由的设置,它会帮助我们自己检索你controller下的action,它会根据你
action的方法签名来进行路由重写的“匹配工作”,而且它的匹配是自上而下的,即第一个满足路由时,即重写URL。
实例:我们希望得到的URL地址是这样的:
http://www.agoit.com/bbs/data:image/png;base64,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
怎么去实现?
你可以会说,传个string的变量就可以了,这和原来的WEB FORM没有什么区别呀,如果你是这样实现的,那我要告诉你,你根据就没有用MVC的路由功能,正确的做法是
在global.ascx中设置你的路由规则
<div class="cnblogs_code">1    routes.MapRoute(2               "myroute",3               "{controller}/{action}/{grade}-{subject}-{version}",4               new { controller = "Home", action = "About", grade = 0, subject = 0, version = 0 }5             );
页: [1]
查看完整版本: 基础才是重中之重~你是否真正在用MVC路由功能