Как мне обрабатывать URL-адреса Asp.net MVC в вызовах javascript ?

Я пытаюсь написать тяжелую часть своего веб-приложения Asp.net MVC с javascript (эта часть веб-сайта является RIA с использованием Extjs) . Тем не мение, Я застрял в правильном способе обработки URL-адресов в javascript.

Например, прямо сейчас у меня есть Ajax-вызов действия List в ObjectsController , который находится в области Чтение . Действие List принимает параметр documentId (int). На данный момент это отображается в / Reading / Objects / List , так как я еще не изменил маршрутизацию (сайт пока слишком молодой, чтобы окончательно определять маршруты). Обычно в представлении, чтобы поместить этот URL в строку, я бы сделал @ Html.Action ("List", "Objects", new {area = "Reading", documentId = 3) .

Однако это не работает при работе с javascript, поскольку javascript не анализируется средством просмотра.

Чтобы обойти это, У меня очень маленькое представление, которое возвращает константы javascript, такие как URL-адреса, которые загружаются до файлов js моего основного приложения. Проблема в том, что я не могу вызвать Html.Action для этого действия, потому что при постоянном времени создания я (очевидно) не знаю, какой documentId будут вызовы ajax, и если вы исключите documentId из вызова Html.Action возникает исключение. DocumentId может измениться во время обычного рабочего процесса приложения.

Как мне с этим справиться? Я не хочу жестко указывать URL-адрес на / Reading / Objects / List , потому что, если я изменю свою маршрутизацию для этого (для более удобного json API), или это веб-приложение не размещено на корень домена, URL-адрес больше не будет действительным.

Как все остальные обрабатывают URL-адреса MVC в своих вызовах javascript?

5
задан KallDrexx 24 November 2010 в 04:33
поделиться