私はかなり新しいMVC開発者です。特定の機能に少し問題があります。MVCでのAJAX/jQueryとCRUD操作
私は、これらのクラスがあります。私は、ユーザーの編集ビューに行くとき
public class User
{
public int UserId{ get; set; }
public string Email { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public bool LogicalDelete { get; set; }
public virtual ICollection<Phone> Phone{ get; set; }
public virtual ICollection<EventList> Event{ get; set; }
}
public class Phone
{
public int PhoneId{ get; set; }
public string Phone{ get; set; }
public bool Mobile{ get; set; }
public int UserId{ get; set; }
public virtual UserClass User { get; set; }
}
やろうとして何 - 私は私の新しい携帯電話、または数の両方を追加することができますボタンを持っていますコンマで区切られた電話は、AJAXのポストスクリプトを使用して特定のユーザに送信されます。
これまでのところ私は、単一の電話アプローチのためにこれを使用してきた:
function Add() {
var res = validate();
if (res == false) {
return false;
}
var ph = {
UserId: $('#UserId').val(),
FirstName: $('#Phone').val(),
LastName: $('#Mobile').val(),
};
$.ajax({
url: "/User/Edit",
data: JSON.stringify(ph),
type: "POST",
contentType: "application/json;charset=utf-8",
dataType: "json",
success: function (result) {
loadData();
},
error: function (errormessage) {
alert(errormessage.responseText);
}
});
そして、UserController
中:
public JsonResult Add(Phone ph)
{
return Json(myDb.Add(ph), JsonRequestBehavior.AllowGet);
}
私が持っている主な問題は、私は合格can'tということです特定のユーザのIDを編集ビューモデルからコントローラに送信します。私は、ビューからデータベースにユーザーを追加してテストを行いましたが、それを行うことができましたが、ナビゲーションプロパティにアクセスしようとすると、電話を一覧表示することも、新しいものを追加することもできません。
私には何が欠けていますか?
あなたのコントローラは '/ User/Edit'ですが、あなたのコントローラはAdd –
です。また、' Add'は 'denyGet'でも' httppost'でなければなりません。 –
あなたの 'Phone'クラスは' 'UserClass'には3つのプロパティが含まれていますが、 'FirstName'、' LastName'、 'State'という名前のプロパティ) –