У меня есть следующий маршрут
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute("Hotel", "en/hotels/{*hotelName}",
new { controller = "Hotel", action = "index" });
}
Таким образом, следующие URL-адреса маршрутизируются
www.mydomain.com / ru / hotels / my-hotel-name /
www.mydomain.com / ru / hotels / myhotelname /
www.mydomain.com / ru / hotels / my_hotel_name /
В контроллере у меня естьусловная проверка, чтобы увидеть, существует ли переданный URL в моей поисковой таблице.Например,
public class HotelController : Controller
{
[HttpGet]
[ActionName("Index")]
public ActionResult IndexGet(string hotelFolder)
{
if(CheckIfFolderExists(hotelFolder))
{
return Content("Hotel URL Found");
}
else
{
**//Here, I want to return the actual requested URL as it didn't exist in my lookup table
}
}
}
Маршрутизация работает в соответствии с путем en / hotels , если введен неправильный URL-адрес, как показано ниже, фактический URL-адрес будет возвращен как обычно.
www.mydomain.com / ru / Attractions / my-Attraction-name /
По сути, я хочу создать словарь URL-адресов, которые я хочу направить,и если запрошенный URL отсутствует в словаре, я хочу вернуть запрошенный URL, будь то страница .HTM, .HTML или .ASP.