Knockout JS - ваш друг:
http://knockoutjs.com/
Редактировать: он помогает вам переместить вашу модель на клиентскую сторону, чтобы ваш код JS мог поддерживать ее в актуальном состоянии в соответствии сдля взаимодействия с пользователем.Оттуда вы можете просто переместить его обратно, готовый к использованию, на сторону сервера.Это еще одна вещь, которую нужно изучить, но в сложных представлениях она устраняет сложность и позволяет избежать разделения управления моделями между клиентом и сервером: теперь все в клиенте.
Итак, в общем, у вас, вероятно, будетнемного больше кода, но его будет намного легче читать и поддерживать.