Назначение обработчиков в проектах, отличных от MVC, состоит в том, чтобы предоставить некоторый тип закодированного ответа вне HTML. Обычно обработчик возвращает XML (rss, RESTful и т. Д.), JSON для jQuery или другой Javascript, а иногда просто чистые данные, такие как двоичные файлы для загрузки. Я использовал обработчики, чтобы даже возвращать специальный javascript, который будет оправдан на клиенте, как способ ленивой загрузки больших двоичных файлов или требований на подходе «только по требованию». Более или менее, обработчик будет использоваться для возврата «всего, кроме HTML».
В MVC вы бы отошли от обработчиков и использовали контроллер для возврата любых данных, которые вам нравятся. Итак, в методе вроде:
mywebsite.com/restapi/content/56223
У вас RestfulContentController будет метод для Index (), который НЕ будет возвращать View (), а вместо этого будет чистый XML или JSON.
public class JSONContentController : Controller
{
public JsonResult Index(int ContentID)
{
// get Content() by ContentID
//
// return a JSON version
return Content().SerializeToJSON();
}
}