0

ASP.NET MVCアクションでJson(null)を呼び出したときに、応答を送信しない理由はありますか?

完了ではなく、jQueryAjax呼び出しで失敗イベントをトリガーするためです。

それを行うコードは次のとおりです。

public override void ExecuteResult(ControllerContext context)
{
    ...
        if (Data != null)
        {
            JavaScriptSerializer serializer = new JavaScriptSerializer();
            if (MaxJsonLength.HasValue)
            {
                serializer.MaxJsonLength = MaxJsonLength.Value;
            }
            if (RecursionLimit.HasValue)
            {
                serializer.RecursionLimit = RecursionLimit.Value;
            }
            response.Write(serializer.Serialize(Data));
        }
}

ばかげた質問のようですが、私はJsonメソッドを無効にしているので、それを削除して質問しています。したがって、私の$ .ajax呼び出しは機能し、失敗する代わりに完了イベントを呼び出します。しかし、ASP.NET MVCチームがそれを「もし」と言った場合、それは私のアプリケーションに影響を与える可能性があります。

        //jQuery 1.9.1
        $.ajax({
            cache: false,
            url: urlGeraSigla,
            data: { titulo: $(this).val() },
            dataType: "json",
            type: 'POST'
        }).done(function (resultadoJson) {
            $('#@(Html.IdFor(model => model.Sigla))').val(resultadoJson);
        }).fail(function(resultadoJson) {
            debugger;//ASP.NET MVC Json(null) hit here
        });
4

0 に答える 0