Все зависит от вашего проекта.
Здесь нет хорошего или плохого подхода, но вы должны помнить пользователей, у которых не включен JS.Если вы зависите от ajax для всех взаимодействий приложения, то вы должны выполнить отдельное поведение для тех пользователей, которые не используют JS (браузер JS не включен).
Это всегда приводит к чему-то подобному на уровне контроллера:
public ActionResult Index()
{
if (Request.IsAjaxRequest())
{
//Ajax Request
//Return partial mostly for partial refresh of the page
return View("PartialView");
}
//Regular Request
return View("FullView");
}
И некоторые проблемы с SEO, как уже упоминалось.