Obtenga datos JSON con jQuery de un servicio .NET: se confunde con la configuración ajax

Acabo de pasar seis horas tratando de aclarar esto y no he tenido éxito.

Hay un servicio web HelloWorld .NET 3.5 en mi máquina local. @ Configure según sea necesario.
El servicio devuelve unList de estructuras personalizadas.

Estoy tratando de consumirlo con jQuery 1.4.4.

Cuando trato de hacer lo quela documentació dice, siempre recibo una respuesta XML del servicio, lo que causa queparseerror en jQuery o se pasa como una cadena tonta a lasuccess función. @ Es decir, sin embargo combinodataType yaccepts (que, de acuerdo con la documentación, controla cómo larecibid datos se manejan), recibo un XML de regreso.

Pero, cuando hago algo que no se sigue lógicamente de la documentación, obtengo con éxito mi conjunto de objetos. @ Es decir, cuando ignoro adataType yaccepts, y establecercontentType: "application/json; charset=utf-8" en cambio, funciona bien. PerocontentType, de acuerdo con los documentos, controle los datossiendo enviad al servidor, no recibido.

En codigo
$.ajax(
  {
  type: "GET",
  url: "http://localhost:52624/Service1.asmx/HelloWorld",
  dataType: "json",
  //accepts can be anything, or it can be missing, doesn't matter, only depends on dataType
  success: function(data, textStatus, jqXHR) {...},
  error: function(jqXHR, textStatus, errorThrown) {...}
  }
)

Result: controlador de error llamado, textStatus =parseerror.

$.ajax(
  {
  type: "GET",
  url: "http://localhost:52624/Service1.asmx/HelloWorld",
  dataType: "application/json",
  //accepts can be anything, or it can be missing, doesn't matter, only depends on dataType
  success: function(data, textStatus, jqXHR) {...},
  error: function(jqXHR, textStatus, errorThrown) {...}
  }
)

Result: el servicio web devuelve XML, se pasa al controlador de éxito comostring.

$.ajax(
  {
  type: "GET",
  url: "http://localhost:52624/Service1.asmx/HelloWorld",
  accepts: "json",  // or "application/json"
  success: function(data, textStatus, jqXHR) {...},
  error: function(jqXHR, textStatus, errorThrown) {...}
  }
)

Result: el servicio web devuelve XML, se analiza y se pasa comoIXMLDOMDocument2.

$.ajax(
  {
  type: "GET",
  url: "http://localhost:52624/Service1.asmx/HelloWorld",
  contentType: "application/json; charset=utf-8",
  success: function(data, textStatus, jqXHR) {...},
  error: function(jqXHR, textStatus, errorThrown) {...}
  }
)

Result: el servicio web devuelve JSON, que jQuery analiza parcialmente (los números y las cadenas se analizan en las propiedades de los objetos, pero las fechas permanecen en forma de"/Date(1303003305724)/").

Preguntas: ¿Entiendo las especificaciones de jQuery? ¿Por qué se dice que el parámetro que controla los datos enviados controla los datos recibidos? ¿Qué estoy haciendo descaradamente mal? ¿Cuál es el último paso para que jQuery también analice las fechas?

Respuestas a la pregunta(3)

Su respuesta a la pregunta