我在本地创建了一个 OData 应用程序。
并且请求地址是“http://localhost:5182/odata/Users http://localhost:5182/odata/Users"
[EnableQuery]
public IHttpActionResult GetUsers()
{
var result = userService.GetQueryable().ProjectTo<UserModel>();
return Ok(result);
}
现在,如果我询问 ViewModel,返回的数据将包含“@OData.type”
像这样:
{
"@odata.context": "http://localhost:5182/odata/$metadata#Users/MyApp.WebApiOData.Models.UserModel",
"value": [
{
"@odata.type": "#MyApp.WebApiOData.Models.UserModel",
"Id": 1,
"Name": "admin",
"PhoneNumber": null
},
{
"@odata.type": "#MyApp.WebApiOData.Models.UserModel",
"Id": 2,
"Name": "mapley",
"PhoneNumber": null
}
}
如果我不要求 ViewModel,返回的数据将像这样:
{
"@odata.context": "http://localhost:5182/odata/$metadata#Users",
"value": [
{
"Name": "admin",
"Pwd": "123456",
"RealName": null,
"Sex": null,...
我不想返回结果包含“@OData.type”,并且Url地址包含“MyApp.WebApiOData.Models”,我只需要myapp的json。
我怎么解决这个问题?
这方面的OData资料太少了,而且我的英文也不好。
我不明白所用的“@odata.type”。
如果你能给我一点帮助,我将永远感激你。