Я не уверен, почему я получаю ошибку синтаксического анализа. Я динамически устанавливаю тип данных на своем ajax, и когда я вызываю его с json в качестве типа данных, я получаю ошибку синтаксического анализа.
Действие контроллера MVC
public ProductViewModel UpdateProduct(ProductViewModel product)
{
var productContract = Mapper.Map<ProductViewModel, ProductContract>(product);
var productReturned = _productService.UpdateProduct(productContract);
if (productReturned.HasValue)
{
return Mapper.Map<ProductContract, ProductViewModel>(productReturned.Value);
}
return null;
}
Вызов Ajax
var ajaxCall = function (destinationUrl, dataToPost, ajaxDataType, element, callbackFunction) {
$.ajax({
url: destinationUrl,
data: dataToPost,
contentType: "application/json",
dataType: ajaxDataType,
success: function (data) {
callbackFunction(data, element);
},
error: function (req, status, errorObj) {
console.log(status);
}
});
}
функция обратного вызова
Это метод, который работает при успешном выполнении ajax, моя база данных успешно обновляется, но мне нужны данные, возвращаемые для обновления пользовательского интерфейса. Я пытаюсь получить это как data
, data.d
и data.d[0]
function updateProductRow(data, element) {
console.log(data.d[0]);
}
dataType
. Согласно документам. dataType (по умолчанию: Intelligent Guess (xml, json, script или html)) Тип: String, Тип данных, которые вы ожидаете получить от сервера. Вы возвращаете объект напрямую, вы скорее всего, сначала нужно преобразовать его в JSON. Возможно, с помощью какой-либо функции сериализации, но я не знаком с asp, но этот выглядит примерно правильно -in-net-4" title="превратить острый объект c в строку json в сети 4"> stackoverflow.com/questions/6201529/ - person Wesley Smith   schedule 24.04.2016