IMO, чтобы сайт мог изящно деградировать, вы должны сначала построить хотя бы фреймворк сайта на самом низком уровне, который вы собираетесь поддерживать. В вашем случае это будут стандартные постбэки.
Как только вы это установили, вы можете начать добавлять взаимодействия ajax.
Подход, который я использовал при использовании ASP.NET MVC, состоит в том, чтобы иметь одну функцию, которая создает целую страницу с нуля (для регулярных обратных передач), а затем иметь несколько дополнительных методов, которые я использовал для динамического обновления контента через Ajax. Если я захочу реализовать метод «Одной страницы», такой как oyu description, я бы обработал событие onclick гиперссылки и вызвал бы метод ajax, который отображает метод «Build Whole Page» в строку, а затем закачивает эту строку в мой контентный div.
НТН