テキストエリアのあるフォームがあり、情報を送信しようとすると、JSON.stringify を使用していますが、エラーが発生します。コードは次のとおりです。
$.ajax({
type: "POST",
dataType: "json",
data: JSON.stringify({
reportid: data["reportid"], //Guid
assessmentId: data["assessmentId"], //Guid
title: data["title"], //string
body: data["body"], //string
section: data["section"], //string
reportsection: data["reportSection"] //string
}),
url: "/Assessments/ModifyAssessmentTemplateText",
success: function (data) {
lastModified = data["LastModified"];
updateLastModified(lastModified);
alert(data);
}
});
私のコントローラーメソッドは次のように設定されました:
[POST("ModifyAssessmentTemplateText")]
[AjaxOnly]
public JsonResult ModifyAssessmentTemplateText(Guid reportid, Guid assessmentid, string title, string body, string section, string reportSection)
{
//...
}
500 サーバー エラーが発生します。
テストを試みたとき、reportid という 1 つのパラメーターのみを指定し、メソッドに文字列を受け入れさせたところ、うまくいったことはわかっています。しかし、Guid に設定すると、500 エラーが発生します。JSON サーバー側を解析する方法はありますか?
編集:
注: データを使用せず、URL を使用する場合: "/Assessments/ModifyAssessmentTemplateText?reportid=" + reportid
問題なく動作します。