Всегда ли asp.net webmethod возвращает jsonified-данные? - PullRequest
4 голосов
/ 19 июля 2010

У меня есть общий вопрос: если веб-метод asp.net всегда возвращает данные в форме 'json'. Если нет, какой тип данных по умолчанию используется для веб-метода?

Мне интересно, есть ли способ получить данные из веб-метода в «HTML», а не «JSON»?

Спасибо

Ответы [ 2 ]

2 голосов
/ 20 июля 2010

PageMethods являются частью ASP.NET AJAX Framework (ScriptManager).

По умолчанию ASP.NET AJAX использует JSON, а не SOAP.

Это в основном дизайн, в основномпоскольку библиотека ASP.NET AJAX Javascript оптимизирована для работы с объектами JSON.

Вы можете переопределить это значение по умолчанию, указав атрибут [ResponseFormat] в веб-методе.

Например:

[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Xml)]
public XmlElement GetFoo(string url)
{

Здесь - достойная статья о PageMethods и веб-сервисах с поддержкой ASP.NET AJAX.

0 голосов
/ 19 июля 2010

Тип возврата для веб-службы по умолчанию должен быть SOAP (формат XML), для WCF есть пакет REST, который может изменить его тип возврата на JSON

[http://msdn.microsoft.com/en-us/netframework/cc950529.aspx][1]

Надеюсьэто помогает.

...