Это почти та же ситуация, в которой я нахожусь, за исключением того, что я использую Knockout.js, а не Backbone.У меня есть представления для Create и Edit, и в каждом представлении очень сложный пользовательский интерфейс Knockout.js, который выполняет Ajaxing JSON назад и вперед на сервер.
В MVC3 я использовал многочисленные методы JsonResult в одном и том жеконтроллер, который предоставил взгляды.Я экспериментировал с RC MVC4 и размышлял, пойти ли по «маршруту» (хо-хо) использования контроллера API для запросов Ajax.Мне нравятся строго типизированные HTTP-классы и тот факт, что JSON.NET более интегрирован, но на этом этапе я должен сказать, что конечный результат наличия отдельного контроллера API для собственного внутреннего использования просто не был правильным.Как и вы, я обнаружил, что у меня много дублирования в области безопасности, и разделение логики, связанной с простыми типами контента, делало вещи более запутанными, а не чище.
Итак, на данный момент (хотя ябыло известно, что это ненадежно) Я планирую продолжать использовать стандартные контроллеры MVC для моего текущего контекста, но я воспользуюсь возможностью использовать блестящий новый веб-API, если я в конечном итоге выставлю публичный API.