Служба WCF JSON или HTTPHandler - PullRequest
4 голосов
/ 05 марта 2011

Я реализую некоторый AJAX, который требует, чтобы JSON возвращался с сервера (в .NET4), но я немного запутался в доводах "за" и "против" использования либо собственного HTTPHandler, либо службы WCF.

Может ли кто-нибудь пролить свет на то, что было бы лучше для средне / крупномасштабного приложения, которое почти полностью основано на AJAX?

ОБНОВЛЕНИЕ

В моем текущем случае использованияМне нужно было бы предоставить пользовательский объект для плагина JQuery, поэтому я столкнулся бы с выбором между репликацией этих объектов в .NET и последующим использованием WCF для их сериализации, что кажется немного лишним шагом в этом случае.Поэтому я буду использовать модель «строителя строк» ​​/ HTTPHandler для взаимодействия с JQuery, но учту метод WCF, если мне нужно будет представить объекты .NET на клиенте.

Спасибо за ответ.

1 Ответ

1 голос
/ 05 марта 2011

Можете ли вы определить структуру обмена сообщениями JSON или вы ожидаете какую-то произвольную структуру?

Если вы можете определить структуру сообщений JSON, вы можете использовать WCF и его сборку для сериализации / десериализации сообщений JSON в .NET.типы.Запросы будут напрямую перенаправлены в операции, и вы закодируете его как любой другой метод .NET, не беспокоясь о JSON или сериализации =>

  1. Получите параметры из операции, представленные в виде типов / классов .NET
  2. Обрабатывать их
  3. Возвращать объект .NET как результат

WCF будет обрабатывать все, что связано с запросом маршрутизации к операции, десериализацией параметров и ответом сериализации.

Если выне может определить структуру сообщений JSON, вы не можете просто десериализовать их в тип .NET.В таком случае вы можете пойти с HttpHandler и как-то проанализировать JSON.

Разница в том, что WCF сделает за вас много работы, но вы должны выполнить ее по-своему.В HttpHandler у вас будет прямой полный контроль над запросами и ответами, но вы сами справитесь со всеми сложностями.

...