C# 使用Microsoft.AspNet.friendlyURL webforms的默认文件夹路由

C# 使用Microsoft.AspNet.friendlyURL webforms的默认文件夹路由,c#,asp.net,webforms,routing,C#,Asp.net,Webforms,Routing,我正在使用Microsoft.AspNet.FriendlyURL启动一个新的webforms项目,但希望能够为文件夹设置默认路由。我有一个名为news的文件夹,其中包含news.aspx和newsitem.aspx。我希望能够按如下方式进行路由: http://sitename/news - Routes to ~/news/news.aspx http://sitename/news/news - Routes to ~/news/news.aspx http://sitename/news

我正在使用Microsoft.AspNet.FriendlyURL启动一个新的webforms项目,但希望能够为文件夹设置默认路由。我有一个名为news的文件夹,其中包含news.aspx和newsitem.aspx。我希望能够按如下方式进行路由:

http://sitename/news - Routes to ~/news/news.aspx
http://sitename/news/news - Routes to ~/news/news.aspx
http://sitename/news/newsitem - Routes to ~/news/newsitem.aspx
第二条和第三条路线使用以下代码工作,但不使用
http://sitename/news

 public static class RouteConfig
{
    public static void RegisterRoutes(RouteCollection routes)
    {
        var settings = new FriendlyUrlSettings();
        settings.AutoRedirectMode = RedirectMode.Permanent;
        routes.EnableFriendlyUrls(settings);

        routes.MapPageRoute("NewsDefault", "news", "~/news/news.aspx");

    }
}

找到解决方案

需要添加
routes.RouteExistingFiles=true

public static void RegisterRoutes(RouteCollection routes)
        {
            var settings = new FriendlyUrlSettings();
            settings.AutoRedirectMode = RedirectMode.Permanent;
            routes.EnableFriendlyUrls(settings);
            routes.RouteExistingFiles = true;

            routes.MapPageRoute("NewsDefault", "news", "~/news/news.aspx");
        }