这是我的OData-Service。
允许读写。 GET-Method工作正常,但我无法发布新内容。我想用POSTMAN发布一个新条目。
(POST-Method)
Link: http://services.odata.org/V3/(S(blacksheep))/OData/OData.svc/Products
Auth: NoAuth
Headers: Content-Type = application/json
Body (raw JSON):
{
"ID": "11",
"Name": "Lern-CD",
"Description": "Lerne die Theorie in 10 Minuten!",
"ReleaseDate": "1995-10-01T00:00:00",
"DiscontinuedDate": "1995-10-01T00:00:00",
"Rating": 1,
"Price": 22
}
错误消息是:
处理请求流时出错。必须为参与继承的类型指定类型信息。
有谁知道这里缺少什么?我是否需要在标题处提供其他信息?或其他什么?
我尝试了很多东西,但我无法找到解决方案..:/
答案 0 :(得分:0)
您需要将odata.type
添加到json正文中,在您的情况Product
中,在ODataDemo
命名空间中定义:
{ "odata.type" :"ODataDemo.Product",
"ID": "11",
"Name": "Lern-CD",
"Description": "Lerne die Theorie in 10 Minuten!",
"ReleaseDate": "1995-10-01T00:00:00",
"DiscontinuedDate": "1995-10-01T00:00:00",
"Rating": 1,
"Price": 22
}
通过此请求,您应该能够获得201 - created
Http响应。
在https://blogs.msdn.microsoft.com/leohu/2013/10/04/odata-and-json-payload-examples/