ASP.NET MVC为什么发布后我的路由不起作用?

时间:2009-04-29 18:56:21

标签: asp.net-mvc url-routing publishing

我为我的网站设置了以下routeMaps设置。本地运行和调试工作完美。我可以将网站发布到我的服务器(www),但只有根页工作(http://www.domain.com)。只要我指定一个控制器(http://www.domain.com/Project),它就会停止工作......

我做错了什么?

Global.asax.vb

' Note: For instructions on enabling IIS6 or IIS7 classic mode, 
' visit http://go.microsoft.com/?LinkId=9394802

Public Class MvcApplication
Inherits System.Web.HttpApplication

Shared Sub RegisterRoutes(ByVal routes As RouteCollection)
    routes.IgnoreRoute("{resource}.axd/{*pathInfo}")

    ' MapRoute takes the following parameters, in order:
    ' (1) Route name
    ' (2) URL with parameters
    ' (3) Parameter defaults

    routes.MapRoute("ProjectsByCategory", "Project/Category/{id}", _
                    New With {.controller = "Project", .action = "ListByCategory", .id = ""}, _
                    New With {.id = "^[0-9]+"})


    routes.MapRoute( _
        "Default", _
        "{controller}/{action}/{id}", _
        New With {.controller = "Project", .action = "Index", .id = ""} _
    )

End Sub

Sub Application_Start()
    Common.LoadEntitySpacesFactory()
    RegisterRoutes(RouteTable.Routes)
End Sub
End Class

2 个答案:

答案 0 :(得分:2)

您要部署到IIS6服务器吗?如果是这样,您需要执行一些步骤detailed here。如果没有,你能不能再解释一下这个错误 - 究竟是什么“它停止工作......”是什么意思?

答案 1 :(得分:0)

您要部署到IIS5吗?如果是,请关注this