我遇到問題將我的列表對象傳遞給我的控制器 - 使用ajax post
。序列化List <SelectListItem>從視圖到MVC中的控制器3
我有這樣的:
try {
var id = schedule.value;
var data2 = @Html.Raw(Json.Encode(Model.SavedScheduleList));
var url = '@Url.Action("SetActiveSchedule", "Frame")';
$.post(url, { savedScheduleList: data2, signScheduleDataId: id }, function (data) {
});
}
catch (err)
{
alert(err);
}
我的控制器看起來是這樣的:
[HttpPost]
public ActionResult SetActiveSchedule(List<SelectListItem> savedScheduleList, int signScheduleDataId)
{
try
{
return Json(null);
}
catch (Exception ex)
{
throw;
}
}
所以在執行我的行動的時候,我savedScheduleList
包含列表對象有7個對象(這是但是每個項目似乎都是「空白」的,即SelectListItem類的這些是每個項目的屬性值:S elected = false, Text = null, Value = null.
Model類(已被強類型的這一觀點)是:
public class ScheduleModel
{
private SignSchedule activeSignSchedule = new SignSchedule();
private List<SelectListItem> savedSignScheduleList = new List<SelectListItem>();
public int SignDataId { get; set; }
public ScheduleFrameList ListFrames { get; set; }
public DateTime Start { get; set; }
public LogMessage LogMessage { get; set; }
public bool CommsLogVisible { get; set; }
public SignSchedule SignScheduleToMakeActive { get; set; }
public int ActiveSignScheduleId { get; set; }
//public List<SignSchedule> SavedSignScheduleList { get { return savedSignScheduleList; } }
public List<SelectListItem> SavedScheduleList { get { return savedSignScheduleList; } }
}
職前檢查數據2,顯示了JSON格式正確的數據和檢查行動中,請求屬性,我可以看到正確的Form.AllKeys屬性中的值以及Params屬性,但它似乎無法將其正確解析回Controller Controller的參數對象。
我想要做什麼?
感謝
編輯 這裏的數據2變量的字符串表示:
var data2 = [{"Selected":false,"Text":"9","Value":"2589"},false,"Text":"afsdfs","Value":"2585"},false,"Text":"sdfas","Value":"2588"}....]
我只是在這裏展示3項,但其實也有7預期。
謝謝你的工作。我將在未來使用它。 – Jason