私は現在、ユーザーが新しい義務を投稿した後、職務のリストを更新しようとしています。私はこれを行うAjaxを使用しようとしています。しかし私はコントローラに投稿してから自分のリストに追加するためにajaxを使う方法を分かりません。私のajaxメソッドでデータフィールドを使用するにはどうすればいいですか?リストを更新するにはどうすればいいですか?ajaxを使用してリストを更新する。
マイコントローラ:
[HttpPost]
Public ActionResult CreateDuty(PartialViewModel d)
{
db.DutiesTable.Add(d.OneDuty);
db.SaveChanges();
pv.DutyList = db.DutiesTable.ToList();
return View("Index");
}
私のAjaxの方法:
<script>
$('#getDuty').click(function() {
$.ajax({
type: 'POST',
url: "/Home/CreateDuty",
data: {d : d}
}).success(function (data) {
alert(data + status);
});
});
</script>
私のAjaxメソッドのdデータフィールド?私はこれがコントローラの場合と同じであることを期待していましたが、Ajaxの使い方はあまりよくありません。 "mappedduty"変数はどこから来ましたか?リストでは、それがDutyListです。それは可能ですか?新しい義務がその上に追加されるように更新するか? – Seb
私は、より明白にするために名前を変更したもので私の答えを更新するつもりです。 –
更新は役に立ちますか?要点は、ビューモデルクラスがデューティクラスと同じではないということです。テーブルのEFクラスとUIのビューモデルをマップする必要があります。あなたのためにそれを単純化することができるいくつかのフレームワークがあります。最も一般的なのはオートマッパです。 –