为数据库优先 oData 端点服务编码我的 WebApiConfig.cs

Coding my WebApiConfig.cs for a Database First oData Endpoint Service

我正在构建一个将生成 oData 的 Web API 服务。我正在使用 "Database First" 方法,因为我在包含视图的 "Models" 文件夹中创建了一个 EDM。

我Visual Studio基于 EDM 为我搭建了一个控制器。

现在我正试图找出要放入我的 WebApiConfig.cs 文件中的路由代码。到目前为止,我在 Internet 上找到的每个示例都涉及 Code First 方法。有谁知道如何通过数据库优先方法做到这一点?

我找到哪里出错了。

首先,我添加了错误的脚手架控制器。最初当我添加我的控制器时,我去了 (右键单击 "Controllers") --> 添加 --> 新建脚手架项目,如下所示。它给了我 2 个可能的 Web API 控制器选项。我选择了基于 Entity Framework.

预填充 CRUD 功能的那个

事实证明,我应该做的是转到 (右键单击 "Controllers") --> 添加 --> 控制器,如下所示。从那里我可以添加一个 ODATA 控制器!

锦上添花?在控制器的顶部,注释掉的是 WebApiConfig.cs!

所需的代码

现在,公平警告,当您 运行 您的代码时,它首先会显示错误。

不要惊慌失措;只需从“http://localhost:(insert port here)/" to "http://localhost:(在此处插入端口)/odata/(在此处插入模型对象) 修改您的 url “

例如:我将 url 更改为“http://localhost:51044/odata/vw_FilesToBeProcessed_Dashboard”,我得到了 odata 输出!