配置 OData 端点

打开文件 App_Start / WebApiConfig.cs。添加以下 using 语句:

using ProductService.Models;
using System.Web.OData.Builder;
using System.Web.OData.Extensions;

然后将以下代码添加到 Register 方法:

public static class WebApiConfig
{
    public static void Register(HttpConfiguration config)
    {
        // New code:
        ODataModelBuilder builder = new ODataConventionModelBuilder();
        builder.EntitySet<Product>("Products");
        config.MapODataServiceRoute(
            routeName: "ODataRoute",
            routePrefix: null,
            model: builder.GetEdmModel());
    }
}

这段代码做了两件事:

  • 创建实体数据模型(EDM)。
  • 添加路线。

EDM 是数据的抽象模型。EDM 用于创建服务元数据文档。该 ODataConventionModelBuilder 类创建使用默认命名约定的 EDM。这种方法需要的代码最少。如果你想要更多地控制 EDM,可以使用 ODataModelBuilder 类通过显式添加属性,键和导航属性来创建 EDM。

路由告诉 Web API 如何将 HTTP 请求路由到端点。要创建 OData v4 路由,请调用 MapODataServiceRoute 扩展方法。

如果你的应用程序具有多个 OData 端点,请为每个端点创建单独的路径。为每个路由提供唯一的路由名称和前缀。