en passant chaîne json comme paramètre à webmethod

Je suis en train de faire une requête ajax à un webmethod EmailFormRequestHandler, je peux voir sur le côté client (via firebug) que le statut de la demande est de 200, mais ce n'est pas de frapper le point d'arrêt (première ligne de la webmethod) dans mon webmethod. Tout fonctionnait bien avec le json param était un object mais avec la façon dont je suis la désérialisation du json j'ai dû changer de chaîne.

js:

function SubmitUserInformation($group) {
    var data = ArrayPush($group);
    $.ajax({
        type: "POST",
        url: "http://www.example.com/components/handlers/FormRequestHandler.aspx/EmailFormRequestHandler",
        data: JSON.stringify(data), //returns {"to":"[email protected]","from":"[email protected]","message":"sdfasdf"}
        dataType: 'json',
        cache: false,
        success: function (msg) {
            if (msg) {
                $('emailForm-content').hide();
                $('emailForm-thankyou').show();
            }
        },
        error: function (msg) {
            form.data("validator").invalidate(msg);
        }
    });
}

aspx:

[WebMethod]
public static bool EmailFormRequestHandler(string json)
{
    var serializer = new JavaScriptSerializer(); //stop point set here
    serializer.RegisterConverters(new[] { new DynamicJsonConverter() });
    dynamic obj = serializer.Deserialize(json, typeof(object));

    try
    {
        MailMessage message = new MailMessage(
            new MailAddress(obj.to),
            new MailAddress(obj.from)
        );
        message.Subject = "email test";
        message.Body = "email test body" + obj.message;
        message.IsBodyHtml = true;
        new SmtpClient(ConfigurationManager.AppSettings["smtpServer"]).Send(message);
        return true;
    }
    catch (Exception e)
    {
        return false;
    }
}
vous dites le code d'état est 200 mais ni l'erreur ni la réussite de rappel des feux?
correct

OriginalL'auteur bflemi3 | 2012-01-20