3

我已经阅读了很多关于 ASP.Net 中的 SEO 友好 URL 功能的信息。我读过的大部分内容都涉及获取一个使用查询字符串参数的 URL 并使它变得漂亮。我对制作标准 URL 很感兴趣。例如:

http://mysite.com/aboutus.aspx

should be...

http://mysite.com/about-us

我发现下面的代码满足要求:

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

void RegisterRoutes(RouteCollection routes)
{        
    // About us section routes
    routes.MapPageRoute(
        "AboutUsRoute",
        "{about-us}",
        "~/aboutus.aspx"
     );
}

我的问题是我必须手动为站点中的每个页面指定一条路线。有一个更好的方法吗?

4

2 回答 2

3

这个简单的路由会将路由 Url 映射到物理 .aspx 页面。

routes.MapPageRoute("Page", "{name}", "~/{name}.aspx");

所以/about映射到/about.aspx/contact-us映射到contact-us.aspx等等。

于 2012-10-05T15:33:04.133 回答
3

微软最近发布了一个新的库,让这种事情在 Web 窗体中变得快速而简单。这是一个包含有用信息的链接: http ://www.hanselman.com/blog/IntroducingASPNETFriendlyUrlsCleanerURLsEasierRoutingAndMobileViewsForASPNETWebForms.aspx

于 2012-10-06T20:40:45.637 回答