URL重写在global.aspx文件中不起作用

时间:2016-11-16 10:57:16

标签: c# asp.net url-rewriting url-routing global-asax

我想在我的ASP.Net C#项目中做一些友好工作,我正在尝试在global.asax文件和protected void Application_Start(object sender, EventArgs e)中执行此操作,但我在浏览器中遇到错误。它不起作用。我正在附上截图和粘贴代码。

protected void Application_Start(object sender, EventArgs e)
        {
            RegisterRoutes(RouteTable.Routes);
        }
        static void RegisterRoutes(RouteCollection routes)
        {
            routes.MapPageRoute("Dashboard", "{FullName}-{Id}/Dashboard", "~/Dashboard.aspx");
            routes.MapPageRoute("Reviews", "{FullName}-{Id}/Reviews", "~/Reviews.aspx");
            routes.MapPageRoute("Events", "{FullName}-{Id}/Events", "~/Events.aspx");
        }

这是我在global.aspx方法下的Application_Start文件中使用的代码。通过使用此代码,它正在使URL正确但不在任何页面上重定向并显示错误是:localhost page isn’t working     localhost重定向了你太多次了。 当我运行我的项目时,我在浏览器上出现此错误。 Global.aspx page code screenshot is here Error page in the browser

这是我的问题,请任何人解决此问题并帮助我。

1 个答案:

答案 0 :(得分:1)

只是一个刺...不太确定你是否可以将参数“破折号”分开......你试过吗?

routes.MapPageRoute("Dashboard", "{FullName}/{Id}/Dashboard", "~/Dashboard.aspx");
            routes.MapPageRoute("Reviews", "{FullName}/{Id}/Reviews", "~/Reviews.aspx");
            routes.MapPageRoute("Events", "{FullName}/{Id}/Events", "~/Events.aspx");

此外,您的路径localhost/user/<URL Route>...不太确定是否可以在routes中没有剩余路径的情况下工作。 您能否确认您的目标网页被点击(在page_load中放置)?