У меня есть некоторый код JavaScript, который обрабатывает вывод json от веб-сервисов asp.net, созданных с платформой 2.0. Теперь я должен поддерживать данные, возвращенные из платформы 3,5 веб-сервиса.
Мой код JavaScript принимает список объектов как возвращаемое значение, которое хорошо работает в 2,0. Однако В платформе 3.5, список перенесен в объект "d". Есть ли какой-либо способ, которым я могу удалить "d" обертку и просто возвратить список?
Я предпочел бы закреплять это на стороне сервера
Невозможно настроить службы 3.5+, чтобы не возвращать .d
. Хорошо, что он тоже есть, потому что он защищает от сложного сценария перехвата JSON, который существует, когда внешний объект JSON является массивом.
Клиентские прокси ASP.NET AJAX автоматически скрывают от вас .d
. Если это мешает, я предполагаю, что вы используете что-то вроде jQuery для вызова службы? Вы можете нормализовать .d
в jQuery, например, используя его обратный вызов DataFilter .