2012-11-09 33 views
0

我跟着从here的例子,但我不能得到这个工作!此OData批量更新查询有什么问题?

我看不出更新查询有什么问题,我想不出要更改什么,因为它看起来不错。我只测试一个请求,因为我想确保它首先运行。

这里的请求体:

--batch_hJUuHcmH7ADWhYbtkF0o9JWlq 
Content-Type: multipart/mixed; boundary=changeset_oYIVi6ByvAtKBlI7hqFWoOwX7 

--changeset(oYIVi6ByvAtKBlI7hqFWoOwX7) 
Content-Type: application/http 
Content-Transfer-Encoding: binary 

MERGE PrescriptionService.svc/Prescriptions(1L) HTTP/1.1 
Host: 192.168.10.179 
Content-Type: application/json;odata=verbose 

{"PrescriptionType":"RegularMedicationPrescriptionType","Page":"0","Comment":"whoaaaaaa"} 

--changeset(oYIVi6ByvAtKBlI7hqFWoOwX7)-- 
--batch(hJUuHcmH7ADWhYbtkF0o9JWlq)-- 

我得到一个202 Accepted所以“整体”批量请求不是畸形。这是从服务器的响应:

--batchresponse_d8e813eb-0327-4518-9312-9b7a55d0da0c 

Content-Type: multipart/mixed; boundary=changesetresponse_fc085e3b-68a8-46dd-86c6-334b1070607d 



--changesetresponse_fc085e3b-68a8-46dd-86c6-334b1070607d-- 

--batchresponse_d8e813eb-0327-4518-9312-9b7a55d0da0c-- 

我试图张贴到批处理体相同的URL创建一个实体,它也不起作用,所以它必须是一些与请求主体。

请求的主体有什么问题?

回答

1

的变更边界如在标题中指定:

--changeset(oYIVi6ByvAtKBlI7hqFWoOwX7)

其中它不:

边界= changeset_oYIVi6ByvAtKBlI7hqFWoOwX7

必须完全后所使用的一个匹配“T。我不知道你为什么添加括号,但他们不应该在那里。 批处理边界本身也一样。

+0

查看我发布的链接,这是官方文档,我完全从那里复制它。它应该被纠正。谢谢! – jere

+0

哦 - 这很不好...谢谢指出。对于困惑感到抱歉。 –