Выполнение операции POST для службы в службах данных ADO.NET - PullRequest
0 голосов
/ 15 апреля 2010

Можно ли выполнить POST для операции службы, определенной в службе данных ADO.NET (она украшена WebInvoke)? У меня не было проблем с вызовом операции сервиса как HTTP GET. Однако, когда я переключился на выполнение процедуры POST, трассировка стека постоянно возвращается с «Параметром не может быть NULL». Я использую приведенный ниже синтаксис jQuery и отправляю POST как JSON (хотя я не включаю вызов $ .ajax, имена параметров точно совпадают). Можно было бы попробовать это с WCF, в отличие от служб данных ADO.NET (недавно переименованных в службы данных WCF). Тем не менее, я предпочел бы использовать этот подход в первую очередь. Я пробовал это с и без stringify метод. Большинство примеров в Интернете показывают только, как использовать POST для сущностей (то есть для обработки операций CRUD). Тем не менее, в этом случае мы отправляем сообщение в сервисную операцию.

function PostToDataService() {
   varType = "POST";
   varUrl = "http://dev-server/MyServices/MyService.svc/SampleSO";
   varData = { CustomMessage: $("#TextBox1").val() };
   varData = JSON.stringify(varData);
   varContentType = "application/json; charset=utf-8";
   varDataType = "json";
   varProcessData = true;
   CallService();
}

1 Ответ

0 голосов
/ 13 мая 2010

Насколько мне известно, служба данных ado.net имеет некоторые ограничения в отношении вашего подхода, в качестве альтернативы вы можете передать свои параметры, используя запрос get, если вы отправляете огромный параметр, вы можете использовать $ batch для преодоления этого.

http://social.msdn.microsoft.com/Forums/en-US/adodotnetdataservices/thread/40a1d8a2-c0d7-45ff-88a0-ce8697b37155

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...