Вопрос

Я знаю, что это, возможно, не соответствует истинному духу MVC, но я просто хочу иметь единый глобальный контроллер, который всегда вызывается независимо от что url-адрес выглядит следующим образом.Например, это могло бы быть:

http://myserver.com/anything/at/all/here.fun?happy=yes&sad=no#yippie

... и я хочу, чтобы это было передано моему единственному контроллеру.Я намерен получить путь программно и обработать его сам - другими словами, мне вообще не нужна никакая маршрутизация.

Я открыл файл global.asax и нашел, где зарегистрированы маршруты, но я просто не знаю, что указать для параметра 'url' в MapRoute:

routes.MapRoute( "Global", "", new { controller = "Global", action = "Index" } );

Это (с пустым 'url') отлично работает для пути по умолчанию '/', но если я изменю его на что угодно, я получу файл, который не найден, когда я хочу, чтобы он обрабатывался Любой url-адрес.Я также попробовал "*" и т.д.но это не сработало.

Я не смог найти какой-либо определенной ссылки на формат, который принимает параметр url.

Это было полезно?

Решение

Как насчет:

routes.MapRoute("Global", "{*url}", new { controller = "Global", action = "Index" } );

От это вопрос

Другие советы

Вы ведь не удалили значение по умолчанию, не так ли?Тебе нужно сохранить это.Может быть, попробовать:

routes.MapRoute("Global", "/", new { controller = "Global", action = "Index" });
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top