如果一個網址爲「www.site.com」的網站重定向到HomeController的索引操作。如何將url縮短爲動作參數
我已經
www.site.com/area/controller/action/{nick}
我想要的網址
www.site.com/{nick}
做同樣的事情
我如何創建一個路由和我在哪裏有創造呢?
在RouteConfig.cs或AreaRegistration.cs中?
如果一個網址爲「www.site.com」的網站重定向到HomeController的索引操作。如何將url縮短爲動作參數
我已經
www.site.com/area/controller/action/{nick}
我想要的網址
www.site.com/{nick}
做同樣的事情
我如何創建一個路由和我在哪裏有創造呢?
在RouteConfig.cs或AreaRegistration.cs中?
在您的RouteConfig.cs
中,在所有路線之後添加以下路線。
routes.MapRoute
(
name: "Nick Route",
url: "{nick}",
defaults: new { area = "AreaName",
controller = "controllerName",
action = "Actionname",
nick = UrlParameter.Optional });
我知道這個職位是舊的,但如果有人有興趣,他會發現這裏的解決方案http://www.nikolay-angelov.eu/custom-url-shortener-in-asp-net-mvc-5/
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
routes.MapRoute(
name: "URL",
url: "{shortURL}",
defaults: new { controller = "Home", action = "RedirectToLong", shortUrl = UrlParameter.Optional }
);
routes.MapRoute(
name: "Basic",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", id = UrlParameter.Optional }
);
可能是最好添加此* *後的默認設置。 –
@ErikPhilips是...已添加到答案.. –
非常感謝,它非常完美 –