0
ASP.NET MVCアクションメソッドにajaxポストを作成していて、onFailure関数をトリガするJsonとしてエラーを返したいとします。以下のコードは私の開発マシンで動作しますが、私たちのテスト環境を試してすぐにonFailure関数は決して命中しません。ステータスコード400がAjaxをトリガーしないOnFailure
エラーが発生したかどうかを確認するために、onSuccess関数のブール値をチェックするソリューションは使用できません。私は、onFailure関数を起動するソリューションが必要です。
public static ActionResult GetModelErrorsInJson(this Controller controller)
{
controller.Response.StatusCode = (int)HttpStatusCode.BadRequest;
var errors = controller.ModelState.Values
.SelectMany(x => x.Errors)
.Select(x => x.ErrorMessage);
var jsonErrors = JsonConvert.SerializeObject(errors);
return new JsonResult()
{
Data = jsonErrors
};
}