none
问个MVC的问题 RRS feed

  • 问题

  • MVC,怎么把URL,跟Controler关联起来的?

    我想看看他源码怎么实现的,在哪儿个DLL里?哪儿个函数?


    2013年7月5日 2:57

答案

  • MVC,怎么把URL,跟Controler关联起来的?

    我想看看他源码怎么实现的,在哪儿个DLL里?哪儿个函数?

    应该是在Route或者类似代码中,

    此处下载源代码:

    ASP.NET MVC 3 RTM Source Code

    或许可以先下载Reflector的反编译器,然后追查跟踪是哪个类即可。


    If you think one reply solves your problem, please mark it as An Answer, if you think someone's reply helps you, please mark it as a Proposed Answer

    Help by clicking:
    Click here to donate your rice to the poor
    Click to Donate
    Click to feed Dogs & Cats


    Found any spamming-senders? Please report at: Spam Report

    • 已标记为答案 male110 2013年7月8日 7:20
    2013年7月7日 9:04
  • 你好,具体的源代码实现在目录mvc3-rtm-sources\mvc3\src\SystemWebMvc\Mvc\MvcHandler.cs line:161开始往后进行处理的,你可以在这个位置加个断点继续跟踪下去。

    PS:我现在使用的mvc版本是mvc3。

    调试mvc3的配置可以参考:如何使项目Debug进MVC3源代码

    // Get the controller type
    string controllerName = RequestContext.RouteData.GetRequiredString("controller");

    博客园: dotNetDR_ 的博客 - 天杀下来的BUG,不怕有我来挡!

    博客园介绍: 博客园创立于2004年1月,是面向软件开发者的高品质IT技术社区,聚集了很多优秀的软件开发者和IT技术学习者。

    • 已标记为答案 male110 2013年7月8日 7:19
    2013年7月8日 3:22

全部回复

  •  public static void RegisterRoutes(RouteCollection routes)
            {
                routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
    
                routes.MapRoute(
                    name: "Default",
                    url: "{controller}/{action}/{id}",
                    defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
                    namespaces: new string[] { "Cinese.OrganizationalStructure.Controllers" }
    
    
                );
            }
    

    通过路由
    2013年7月6日 4:00
  • MVC,怎么把URL,跟Controler关联起来的?

    我想看看他源码怎么实现的,在哪儿个DLL里?哪儿个函数?

    应该是在Route或者类似代码中,

    此处下载源代码:

    ASP.NET MVC 3 RTM Source Code

    或许可以先下载Reflector的反编译器,然后追查跟踪是哪个类即可。


    If you think one reply solves your problem, please mark it as An Answer, if you think someone's reply helps you, please mark it as a Proposed Answer

    Help by clicking:
    Click here to donate your rice to the poor
    Click to Donate
    Click to feed Dogs & Cats


    Found any spamming-senders? Please report at: Spam Report

    • 已标记为答案 male110 2013年7月8日 7:20
    2013年7月7日 9:04
  • 你好,具体的源代码实现在目录mvc3-rtm-sources\mvc3\src\SystemWebMvc\Mvc\MvcHandler.cs line:161开始往后进行处理的,你可以在这个位置加个断点继续跟踪下去。

    PS:我现在使用的mvc版本是mvc3。

    调试mvc3的配置可以参考:如何使项目Debug进MVC3源代码

    // Get the controller type
    string controllerName = RequestContext.RouteData.GetRequiredString("controller");

    博客园: dotNetDR_ 的博客 - 天杀下来的BUG,不怕有我来挡!

    博客园介绍: 博客园创立于2004年1月,是面向软件开发者的高品质IT技术社区,聚集了很多优秀的软件开发者和IT技术学习者。

    • 已标记为答案 male110 2013年7月8日 7:19
    2013年7月8日 3:22