Я выполнением вызова AJAX, и я хочу Действие контроллера (с помощью HttpPost) принять параметр IEnumerable<PercentageViewModel> percentages
параметра Действие контроллера не правильно заселен с AJAX POST
где PercentageViewModel
является:
public class PercentageViewModel
{
public int Id { get; set; }
public string Percentage { get; set; }
}
Заполненная структура данных в Action имеет 2 элемента в коллекции, но каждый элемент заполняется значениями по умолчанию (0 и null). Вот данные, как представляется, в Chrome Network Headers - когда я нажимаю на вызов AJAX сообщение XHR
percentages[0][Id]:7
percentages[0][Percentage]:26.1
percentages[1][Id]:8
percentages[1][Percentage]:20.3
Вот JS, где я наполнении params
переменную, которая будет послана с помощью AJAX Post вызова.
var params = {};
var dict = [];
for (var idx in data) {
var item = {
Id: idx,
Percentage: data[idx]
};
dict.push(item);
}
params['percentages'] = dict;
где переменные данные содержат данные, как это (при записи на консоль Chrome):
Object {7: "26.1", 8: "20.3"}
Как я могу построить данные в JS, так что структура данных в действии заполняется правильно?
Полное раскрытие информации: это перефразирование question Я спросил вчера - как более целенаправленный вопрос.