在odl服务的网址上加上后缀".svc"

cuo*_*gle 1 odata asp.net-web-api asp.net-web-api-odata odata-v4

这可能是一个愚蠢的问题,我.svc对ODATA服务的后缀只有一点混淆,因为我看到的大多数示例.svc在根URL上总是有后缀,例如:

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

甚至在ODATA文档示例上:

在此输入图像描述

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

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

Jan*_*mes 8

.svcWCF服务使用该扩展作为Service-Document和服务的入口点.由于Web-API使用路由,因此您没有(并且需要)此svc文件.但是,如果你愿意,你可以模拟一个,但这不是一个好习惯.

事实上,.svc结束是大多数前WCF开发人员试图隐藏的一件事,因为它没有用,而且非常令人困惑.最好在RESTfull服务之前加上类似的东西/api/Products(1)或版本api/v1/Products(1)