JQueryを使用してコントローラにデータを送信していますが、コントローラがデータを受信していません。ajax呼び出しで複数のテーブルのデータを送信する方法は?
私は2つのテーブルのデータを投稿したい、フィールドは動的に作成され、いくつかはhtmlにあります。ここで
は、私のコードのサンプルです:
{
coursesarray.push($("#coursename").val());
for (var i = 1; i < counter; i++)
{
var courses = $('#coursename' + i).val();
coursesarray.push(courses);
}
obj.tbl_course = coursesarray;
obj.Name = Name;
$.ajax(
{
type: "POST",
datatype: "json",
contenttype: "application/json/",
url: "/Demo/SaveData/",
data: JSON.stringify(obj),
success: savesuccess,
error:saveerror
});
});
コントローラメソッド
public JsonResult SaveData(tbl_name tblobj)
{
db.tbl_name.Add(tblobj);
db.SaveChanges();
foreach (var a in tblobj.tbl_course)
{
db.tbl_course.Add(a);
db.SaveChanges();
}
return Json("success", JsonRequestBehavior.AllowGet);
}
とモデル
public partial class tbl_name
{
public int PkId { get; set; }
public string Name { get; set; }
public virtual ICollection<tbl_course> tbl_course { get; set; }
}
及び第2のモデルは
public partial class tbl_course
{
public int Pkid { get; set; }
public Nullable<int> FkId { get; set; }
public string Coursename { get; set; }
public string CourseTeacher { get; set; }
public virtual tbl_name tbl_name { get; set; }
}
です
投稿するコントローラメソッドとバインドするモデルを表示する必要があります。 –
私はすべてを投稿してください見てください。 –
try data:{JSON.stringify(obj)}、 – Ritz