Asp.Net MVC4网API-返回,从而为最终用户注从查询,而无需定制的MediaTypeFormatter
-
29-10-2019 - |
题
我正尝试使用新的 (#) 测试来建立一个网服务,我可以查询使用的 只读查询串的公约 和它回归 为最终用户注.我还要用只读2.0(而不是1.0).
虽然它看起来并不像它已经支持 $选择 选项和头似乎能够复盖 $format 选项,返回一个 IQueryable
通用似乎提供支持的其他大多数查询的选择,我需要。
我真的在努力与是如何最好地提供星,以满足从而为最终用户2.0规范。(#)只是返回正常java时查询。例如,如果执行得到请求的这样的事情...
http://localhost:XXXXX/vendor/?$filter=RONUMBER eq '2597385'&$select=VENDORID,VENDORNAME&$top=1&$format=Json
..得到顶级的打击匹配指定RONumber上我的开发计算机,我得到回应含有下列Json...
[{"MEPartNumber":"11-2222-3-4444","MFGPartNumber":"123456-123","MFGSerialNumber":"ABC123","RONumber":"987654321","VendorId":"1234567","VendorName":"ACME SERVICE CENTER"}]
我需要Json符合为最终用户2.0规范。东西更像这样..
OData V2: {
"d" : {
"results": {
"__metadata": {
"uri": "http://someserver/foo/vendor(1)",
"type": "Vendor"
},
"MEPartNumber": "11-2222-3-4444",
"MFGPartNumber": "123456-123",
"MFGSerialNumber": "ABC123",
"RONumber":"987654321",
"VendorId":"1234567",
"VendorName": "ACME SERVICE CENTER"
}
}
}
我想我可以写一个自定义 MediaTypeFormatter
获得结构,我想要的。我也许也能修改我的返回对象的模仿的结构所需的手机中。除了这两个选择,任何人都不会知道的一个聪明的方式使(#)给我的只读2.0注的对象?
解决方案
你需要给自己写的 MediaTypeFormatter
提供正确的序列化。我们没有船舶的一个为最终用户的格式的软4测试,但是以前的化身WCF网Api有一些例子如何编写之一。 http://wcf.codeplex.com/SourceControl/list/changesets 寻找Microsoft。网。Http。格式。为最终用户(你应该能够使用最多的来源,虽然一些执行细节可能已经改变)
一个选择会将尝试建造一个也可与检,会化的形状,预计通过从而为最终用户v2。
不隶属于 StackOverflow