我的.net路线有什么问题?

时间:2012-11-27 11:51:50

标签: asp.net asp.net-routing

我已经在线阅读了一些教程,它们似乎都显示了使用ASP.net Web表单的.net路由的相同逻辑。当我执行下面的URL时,我收到404错误。 Test.aspx位于此应用程序的根文件夹中。

http://www.mydomain.com/member/abc

这是我的global.asax内容:


<%@ Application Language="C#" %>
<%@ Import Namespace="System.Web.Routing" %>

<script runat="server">

    void RegisterRoutes(RouteCollection routes)
    {
        routes.MapPageRoute(
            "TestABC",
            "member/{name}",
            "~/Test.aspx");
    }               

    void Application_Start(object sender, EventArgs e) 
    {
        RegisterRoutes(RouteTable.Routes);
    }

    void Application_End(object sender, EventArgs e) 
    {
        //  Code that runs on application shutdown

    }

    void Application_Error(object sender, EventArgs e) 
    {

    }

    void Session_Start(object sender, EventArgs e) 
    {
        // Code that runs when a new session is started

    }

    void Session_End(object sender, EventArgs e) 
    {
        // Code that runs when a session ends. 
        // Note: The Session_End event is raised only when the sessionstate mode
        // is set to InProc in the Web.config file. If session mode is set to StateServer 
        // or SQLServer, the event is not raised.

    }

</script>

我的web.config文件需要做些什么吗?

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

我猜你在点击iis服务器时没有触发你的路由模块。 作为验证这是原因的测试:更改webconfig以根据请求运行所有托管模块。 你需要设置这个:

<modules runAllManagedModulesForAllRequests="true">

如果解决了这个问题,你可以阅读this resource了解为什么不这样做:)