Есть сайт расположенный в поддиректории другого сайта (ApplicationPath = /subsite)
У него такая схема роутов
{culture}/{controller}/{action}/{id}
т.е. полный путь получается:
schema://domain:port/subsite/{culture}/{controller}/{action}/{id}
Пользователи могут писать оттуда тикеты в саппорт. Хочется иметь на созданный запрос сразу полную ссылку.
В этот момент я имею Request в котором вижу полный урл страницы с которой создаётся тикет, но не совсем понятно, как корректно работать с полными путями.
Если я сделаю так
var ticketUri = new Uri(uri, "Ticket/Index/" + ticket.id.ToString());
то получу
schema://domain:port/subsite/{culture}/{controller}/Ticket/Index/id
а если так
var ticketUri = new Uri(uri, "/Ticket/Index/" + ticket.id.ToString());
то потеряю subsite/{culture}
И есть к нему сервис, который по расписанию выполняет отчёты и шлёт письма. В них тоже хочется иметь прямые урлы, но Request и прочие вещи из MVC на уровне сервиса уже недоступны.
Может кто-то решал аналогичную проблему?
Здравствуйте, QuAzI, Вы писали:
QAI>Может кто-то решал аналогичную проблему?
Ничего не понял. Контекст ты где то у себя в голове оставил.
Во-первых, пути к экшенам надо не конкатенацией строк формировать, а вызовом Url.Action. А во-вторых ты забыл сказать в чем, собственно, у тебя проблема.
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>