的特定網頁,我的Web應用程序具有URL www.example.com/Test/Index
URL重定向到一個新的頁面在C#
不過,我想使這個URL訪問時,用戶只需輸入www.example.com/Test
,而不是整個事情。
那麼這怎麼可以單獨使用C#來完成呢?任何幫助將不勝感激!
的特定網頁,我的Web應用程序具有URL www.example.com/Test/Index
URL重定向到一個新的頁面在C#
不過,我想使這個URL訪問時,用戶只需輸入www.example.com/Test
,而不是整個事情。
那麼這怎麼可以單獨使用C#來完成呢?任何幫助將不勝感激!
您可以使用重定向。在ASP.NET中,這是Response.Redirect。在MVC中,這是RedirectToAction(「Index」)。這將導致他們的瀏覽器然後請求另一個URL。
如果您不想更改/重定向URL並顯示www.example.com/Test
,那麼您可以使用服務器端重定向。 ASP.NET:Server.Transfer。在MVC中,你可以只用return Index();
,但這有時會有問題。更好的選擇是使用默認路由:
public class MvcApplication : System.Web.HttpApplication
{
...
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Test", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
}
您應該在任何新創建的MVC 3應用程序中自動獲取此代碼。您只需爲要控制此默認路由的控制器定製它即可。
從哪裏應該調用'RegisterRoutes'方法?什麼參數應該傳遞? – BurninatorDor
你不會自己調用它,它會自動調用,只是因爲它在Global.asax.cs文件中(你應該已經自動擁有這個文件)。所以你所要做的就是編輯RegisterRoutes方法。 MVC框架負責在應用程序啓動時自動調用該方法。 – AaronLS
謝謝,這真的有幫助! – BurninatorDor
我們應該假設這是在ASP.NET中嗎?它是WebForms還是MVC? –
對不起,我忘了提到這一點,它是MVC – BurninatorDor