Подскажите, как решить проблему.
Допустим есть сайт на Web Pages 3 (или 2, не принципиально) с Razor (оно же WebMatrix).
Штатная система роутинга в web pages вполне удобна, но, надо из url выцепить часть, а дальше чтобы всё работало как обычно.
Пример:
http://localhost/spb/a/b/c
http://localhost/msk/a/b/c
необходимо чтобы регион (spb, msk и т.д.) ушел в какую-нибудь доступную далее переменную (PageData или куда-то ещё), а далее вся обработка пошла штатным методом, будто перешли по ссылке:
http://localhost/a/b/c
пока из решений только использование RouteTable.Routes.MapPageRoute("default", "{region}/{*path}", "~/somepage.cshtml");
но оно не подходит, т.к. позволяет мапить на конкретную физическую страницу, а необходимо чтобы после выделения региона в переменную — обработка шла полноценно, как обычно.
ещё мысль найденная в гугле, в Application_BeginRequest() выцеплять этот регион и далее делать Contact.RewriteUrl(...), но не совсем понятно, как корректно там все прописать, чтобы не портить исходный урл и параметры, а также — где при этом сохранить выдранный регион...
В общем подскажите. Также это может быть полезно для указания локали, вроде
http://localhost/ru/a/b/c