如何在asp.net webforms中设置默认页面url路由

本文关键字:默认 url 路由 设置 asp net webforms | 更新日期: 2023-09-27 18:03:59

我正在尝试在我的weforms中实现url路由。我只做了一部分。你能帮我把路由设置到初始页或者索引页吗?在我的route map类中,我写了如下内容

routes.MapPageRoute("Index","","~/Index.aspx");

和我设置为索引。将Aspx设置为起始页并运行它。但url仍然是Index.aspx。

在MVC中,对于默认页面,我们将按照如下方式编写一组行。
routes.MapRoute(
            name: "Default",
            url: "{controller}/{action}/{id}",
            defaults: new { controller = "Student", action = "Index", id = UrlParameter.Optional }
        ); 

在Webforms中有这样的技术吗??

如何在asp.net webforms中设置默认页面url路由

试一下,

  1. routeName:路由名。每个路由必须是唯一的。您可以设置任何唯一的名称,我将其命名为客户,以便更好地理解。
  2. routeUrl:要实现的路由URL。例如这里我们想要客户。. aspx只能显示为客户(没有. aspx扩展名),因此这个自定义必须在这里定义。
  3. physicalFile:实际ASP的URL。路由URL应该重定向到的。对于本例,它是Customers.aspx。MapPageRoute方法将路由添加到全局路由集合中,即RouteTable.Routes。在Application_Start事件处理程序中调用RegisterRoutes,以便在应用程序启动时将所有路由添加到RouteTable集合中。这就是删除或隐藏ASP的. aspx扩展所需要做的全部工作。. Net网页,现在如果你在URL中输入http://localhost:1932/RoutingCS/Customers/或http://localhost:1932/RoutingCS/Customers都会重定向到客户页面,即customers .aspx。

    protected void Application_Start(object sender, EventArgs e)
    {
      RegisterRoutes(RouteTable.Routes);
    }
    public static void RegisterRoutes(RouteCollection routes)
    {
      routes.MapPageRoute("Index","Index","~/Index.aspx");
    }
    

步骤点击这里

演练:使用ASP。Web表单应用程序中的。NET路由

我不认为这可以用新的路由技术来完成,但你仍然可以通过在你的web.config中指定默认页面来完成。这可以通过添加以下元素作为<configuration>节点的子元素来实现(几乎在顶层):

<system.webServer>
    <defaultDocument enabled="true">
        <files>
            <clear />
            <add value="Index.aspx" />
        </files>
    </defaultDocument>
</system.webServer>

然而,您的url将显示为yourdomain.com而不是yourdomain.com/Index.aspx

另一种选择是让您的Default.aspx页面永久重定向到Index