servicio web asmx que devuelve xml en lugar de json en .net 4.0

Acabo de actualizar una copia de prueba de mi sitio a asp.net 4.0 y he notado un problema extraño que solo surge cuando subo el sitio a mi servidor.

el sitio tiene un servicio web asmx que devuelve json, pero cuando ejecuto el sitio en mi servidor devuelve xml. funcionó bien en asp.net 3.5 durante más de un año.

webMethod está decorado con los atributos correctos ...

[WebMethod][ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public List<LocationRecentChange> RecentChanges()

y en mi máquina local devuelve json.

aún en el servidor (Windows 2008 64bit) devuelve xml.

usando la consola firebug, verá una respuesta 200 OK y un montón de XML, y en mi máquina local los datos devueltos son los JSON que espero.

Aquí está el javascript que llama al servicio.

function loadRecentData() {
$.ajax({
    type: "POST",
    url: "service/spots.asmx/RecentChanges",
    data: "{}",
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: loadRecentUpdates,
    failure: function(msg) {
        //alert(msg);
    }
});

}

Cualquier sugerencia bienvenida, ¡esto me tiene perplejo!

Respuestas a la pregunta(2)

Su respuesta a la pregunta