【问题标题】:ASP.NET Web API Help Pages showing no content for odata controllersASP.NET Web API 帮助页面不显示 odata 控制器的内容
【发布时间】:2014-04-15 15:05:08
【问题描述】:

我安装了 ASP.NET WebApi v2.1 和 ASP.NET Web API 帮助页面 v2.1

我在构建时生成了一个 XML 文件,该文件被放置在 App_Data 文件夹中,其中似乎包含从我的控制器生成的文档。

服务正在打开该 XML 文件,没有任何问题。我更改名称只是为了确保它确实在打开它。

当我导航到帮助页面时,我看到了标题信息,但没有列出任何 API。

我假设这是因为 APIExplorer 找不到我的控制器,因为它们没有显式映射。 IOW,在我的 WebApiConfig.cs 中我只有

config.Routes.MapODataRoute("odata", "Odata", getImplicitEdm());

其中“getImplicitEdm”使用 OdataConventionModelBuilder() 定义实体并使用 GetEdmModel() 将模型传递给 MapOdataRoute()。

如何让 APIExplorer “找到”我的控制器?

【问题讨论】:

    标签: c# asp.net asp.net-web-api odata


    【解决方案1】:

    API Explorer 不支持 OData 服务/OData 控制器。

    对 OData 的(几乎)等效支持来自 http:///odata/$metadata。请注意,$metadata 仅指实体集,而不是实际的控制器。例如,即使用户控制器不存在,它仍会显示用户端点。

    这篇文章有一个关于 $metadata 的部分: http://www.asp.net/web-api/overview/odata-support-in-aspnet-web-api/creating-an-odata-endpoint

    2015 年 5 月 6 日编辑

    https://github.com/OData/WebApi/issues/94 跟踪此功能的功能请求

    【讨论】:

    猜你喜欢
    • 2015-11-18
    • 2014-02-28
    • 2014-10-11
    • 1970-01-01
    • 2015-07-18
    • 1970-01-01
    • 2014-03-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多