【发布时间】:2011-06-24 05:49:41
【问题描述】:
我有一个 WCF REST Web 服务,它通过 global.asax 中的服务路由托管,如下所示;
protected override void RegisterRoutes(System.Web.Routing.RouteCollection routeTable)
{
routeTable.Add(new ServiceRoute("", new WebServiceHostFactory(),
typeof(UserService)));
}
我想知道是否可以在同一个应用程序中同时托管另一个 Web 服务(即 WCF 数据服务)。
protected override void RegisterRoutes(System.Web.Routing.RouteCollection routeTable)
{
routeTable.Add(new ServiceRoute("", new WebServiceHostFactory(),
typeof(UserService)));
routeTable.Add(new ServiceRoute("OData", new DataServiceHostFactory(),
typeof(UserDataService)));
}
尝试在我的浏览器中导航到 http://localhost:port/ 会正常显示标准 REST 服务,而导航到 http://localhost:port/OData 会显示“未找到终点页面”。
原因是我需要保留 REST 服务中的遗留代码,但还想通过数据服务公开一些纯数据。
【问题讨论】:
-
一个最喜欢的,几个赞成票和几十个意见,甚至没有一个建议?当然,至少有人可以暗示从哪里开始寻找。
标签: wcf rest .net-4.0 wcf-data-services