在 url 上为 odata 服务添加后缀“.svc”

Suffix ".svc" on url for odata service

这可能是一个愚蠢的问题,我对 ODATA 服务的后缀 .svc 有点困惑,因为我看到的大多数示例总是在根 URL 处有后缀 .svc ], 例子:

http://services.odata.org/V4/Northwind/Northwind.svc/

甚至 ODATA document 示例:

在 ASP.NET Web Api 上构建 ODATA 时,我发现后缀 .svc 实际上并不是强制性的,如果我们想在路由配置中添加它。

那么在根 URL 上添加后缀 .svc 以构建 ODATA 服务的目的是什么,或者只是约定指定这是 ODATA service?

WCF 服务使用 .svc 扩展作为服务文档和服务的入口点。由于 Web-API 使用路由,您没有(也不需要)这个 svc 文件。但是,如果你愿意,你可以模拟一个,但这不是一个好的做法。

事实上,.svc 结尾是大多数前 WCF 开发人员试图隐藏的一件事,因为它没有用,而且非常混乱。最好在 RESTfull 服务前加上 /api/Products(1)api/v1/Products(1)

之类的前缀