2010-03-12 2 views
0

Если вы не используете области, связанные с URL-адресом для JsonResults от клиентов, это не большая часть боли, обычно вы можете уйти с жесткой кодировкой URL-адреса в свои json-звонки и уйти с Это. Проблема возникает, когда у вас разные области, и вы не хотите обновлять все свои ссылки при перемещении контроллера (и его представлений) из одной области в другую. Я не очень доволен тем, как я обработка этого сценария, имея этот кусок кода в каждом виде:.net MVC, работающий с json и областями

<script type="text/javascript"> 
    var ControllerActions = { 
     JsonSearch: '<%= Url.Action("JsonSearch") %>/', 
     JsonDelete: '<%= Url.Action("JsonDelete") %>/', 
     Edit: '<%= Url.Action("Edit") %>/', 
     Delete: '<%= Url.Action("Delete") %>/' 
    } 
</script> 

Хотя это работает независимо от того, где я помещаю мнение/контроллеры Интересно, если есть более элегантным для этого.

ответ

1

Мне лично нравится подход, который вы использовали выше. В конечном счете, если вы хотите иметь мобильность своих контроллеров и действий, лучше всего зависеть от генераторов Route, доступных в ASP.NET MVC (например, Url.Action). Моя единственная рекомендация состоит в том, чтобы вывести его в частичный/многоразовый элемент управления, поэтому он сводится к одной строке в вашем коде.

Смежные вопросы