У меня есть модуль dnn, который я создал, который не имеет проблем с извлечением данных с сервера с помощью WebAPI. Однако, когда я пытаюсь выполнить обновление, я продолжаю получать ошибки независимо от того, что я пытаюсь сделать. Просмотр в Firebug, я могу данные быть вывешенным:Как выполнить обновление/удаление DatNetNuke WebAPI?
(http://www.virtual-essentials.com/personal/firebug1.png)
Но, когда я отладки, я не вижу ничего, кроме (null.setnull) значения по умолчанию (BOOL = ложь, INT = 0, строка = пустое).
Тогда, конечно, ответ не хорошо, и результаты в этом: (http://www.virtual-essentials.com/personal/firebug2.png)
Я пробовал все комбинации вещей, которые я могу думать, но не может получить это понял, и я сходить с ума.
Здесь Ajax вызов: // U // операция - обновление self.updateTestimonial = функция (objItem) { метода переменных = "UpdateTestimonial"; self.UpdatePublishStatus (objItem);
$.ajax({
type: "POST",
contentType: "application/json",
url: sf.getServiceRoot('VirtualEssentials/Testimonials') + "TestimonialWeb/" + method,
beforeSend: sf.setModuleHeaders,
data: ko.toJSON({ item: new TestimonialInfoDTO(objItem.TestimonialID(), objItem.IsPublished())}),
success: function (data) {
self.userAlertText(objItem.Testimonial() + ' changes have been saved');
//self.getTestimonials(); //get the new data after updates
},
error: function (xhr, status, error) {
self.userAlertText('OOPS! Error updating ' + objItem.Testimonial + '<br />' + (error));
//put the status back
self.UpdatePublishStatus(objItem);
}
});
};
Вот вызов WebAPI Контроллер:
[HttpPost]
[DnnModuleAuthorize(AccessLevel = SecurityAccessLevel.Edit)]
public System.Net.Http.HttpResponseMessage UpdateTestimonial(TestimonialInfoDTO item)
{
try
{
Controller.TestimonialController objController = new Controller.TestimonialController();
objController.PublishTestimonial(item.TestimonialID, item.IsPublished);
}
catch (HttpResponseException ex)
{
return ex.Response;
}
}
Любая помощь на этом искренне признателен !!