小编Dar*_*ran的帖子

在WebApi OData中为OData服务文档基URL提供一个尾部斜杠

如何在OData服务文档的根元素中控制基本URL属性?

我正在使用WebApi设置OData服务,System.Web.Http.OData.Builder.ODataConventionModelBuilder继承自的控制器和控制器System.Web.Http.OData.ODataController

这一切都很美妙,Excel 2013愉快地访问数据.

尝试使用Excel 2010和PowerPivot时出现问题.我知道在没有Accept标头的情况下发送JSON格式的响应的修复程序,但我找不到任何有关基本URL问题的讨论.

我设置了我的odata路线,config.Routes.MapODataRoute("odata", "odata", builder.GetEdmModel());当我点击这个URL时,我得到了回复<service xml:base="http://localhost/odata" xmlns="http://www.w3.org/2007/app" xmlns:atom="http://www.w3.org/2005/Atom"/>

Excel 2010 + PowerPivot读取此URL并确定由于基URI上没有尾部斜杠,它应该在根中请求具有URI的集合,例如,http://localhost/Products而不是http://localhost/odata/Products它应该.

我通过访问服务文档的静态版本来确认我的怀疑,修改后将尾部斜杠添加到基本属性值,然后为集合资源请求正确的URL.

我已经尝试通过ASP.Net WebStack源代码来查看我是否可以覆盖格式化程序或其他东西,但是迷路了.任何建议将不胜感激.

odata asp.net-web-api

5
推荐指数
1
解决办法
1663
查看次数

标签 统计

asp.net-web-api ×1

odata ×1