2012-08-29 23 views
0

如何在瀏覽器中更改「www.abc.com/welcome」這樣的視圖,但實際路徑是「www.abc.com/welcome.aspx」。如何在C#中顯示不同的網址?

而當我輸入「www.abc.com/welcome」,然後將路徑「www.abc.com/welcome.aspx」,但仍然像「www.abc.com/welcome」查看。

我嘗試下面的web.config這個代碼,但遇到錯誤:無法識別的配置節urlMappings

<urlMappings enabled="true"> 
    <add url="~/welcome.aspx" mappedUrl="~/welcome" /> 
</urlMappings> 

我不知道仍然有其他辦法嗎?

+0

嗨,我會建議使用路由,你可以在網頁表單甚至使用。查看http://msdn.microsoft.com/en-us/library/cc668202(v=vs.90).aspx獲取路線。它很容易設置和使用 – Ingo

回答

4

你從哪裏得到有關此urlMappings部分的信息?它不受IIS或ASP.Net的默認支持。

我想你可能想看看UrlRewrite Module

有了這個設置url重寫就像你想要的是微不足道的。

0

如果您使用的是URL重寫模塊,您需要確保在「/ welcome」之類的東西可用之前,您將運行哪個版本的IIS。默認情況下,IIS6不支持無擴展名的URL。您需要運行ISAPI篩選器,否則您需要在IIS7上運行。

0

我建議你使用路由How to: Use Routing with Web Forms

您需要註冊UrlRoutingModuleUrlRoutingHandle r處理程序才能使用路由功能(更多詳細信息可以在上面的文章中找到)。

然後在Global.asax中

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

public static void RegisterRoutes(RouteCollection routes) 
{ 
    routes.Add("BikeSaleRoute", new Route 
    (
     "bikes/sale", 
     new CustomRouteHandler("~/Contoso/Products/Details.aspx") 
    )); 
}