у меня простой класс
public class CaseField
{
public string XPath { get; set; }
public string NewValue { get; set; }
}
И контроллер
public string SaveCaseData(string authority,
string shopNo,
string caseNo,
CaseField[] caseFields)
{
return new Service().SaveCaseData(authority,shopNo,caseNo,caseFields.ToList());
}
и jQuery AJAX-запрос
var editableFieldsArray = [];
$('.editable').each(
function () {
var caseField = {};
caseField.NewValue = $(this).attr("value");
caseField.XPath = $(this).attr("xpath");
editableFieldsArray.push(caseField);
}
);
var params = { authority: authority, shopNo: shopNum, caseNo: caseNum, caseFields: editableFieldsArray };
$.ajax({
url: $('.CaseDataView').data('url'),
datatype: 'json',
data: params,
success: function (result) {
isDataChanged = false;
if (showOperationResult) {
if (result == 'Successful') {
jAlert('Case data saved succesfully!', '', 'BigInfoIcon');
} else if (result == 'Failed') {
jAlert('Failed to save case data!', '', 'BigInfoIcon');
}
}
HideChangeProcess();
}
});
Первые 3 параметра я получаю. Но с массивом у меня проблема - в моем браузере я смотрю на editableFieldsArray и у меня есть массив с правильными данными, но в контроллере у меня есть массив с нулевыми значениями
![enter image description here](https://i.stack.imgur.com/And1k.png)
EDIT
Перед вызовом ajax в chrome у меня есть такая структура params
params
Object
authority: "localhost"
caseFields: Array[3]
0: Object
NewValue: "Thurid Waagstein Madsen"
XPath: "Case/SalesInfo/Customers/CustomerContactInfo/Name"
__proto__: Object
1: Object
NewValue: "Holger Danskes Vej 79"
XPath: "Case/SalesInfo/Customers/CustomerContactInfo/Address"
__proto__: Object
2: Object
NewValue: "Frederiksberg"
XPath: "Case/SalesInfo/Customers/CustomerContactInfo/City"
__proto__: Object
length: 3
__proto__: Array[0]
caseNo: "06659"
shopNo: "N100250"
__proto__: Object
В клопе:
Где ошибка?