如何将两个服务类用于WCF REST服务

本文关键字:服务 用于 WCF REST 两个 | 更新日期: 2023-09-27 18:26:25

我有一个使用WCF REST Service Template构建的REST服务。

我很好奇是否有可能在我的项目中为类提供服务,并在Global.Asax.的RegisterRoutes()中注册它们

我试过了,但只有Service1会解决:

    private void RegisterRoutes()
{                  
    RouteTable.Routes.Add(new ServiceRoute("", new WebServiceHostFactory(), typeof(Service1)));
    RouteTable.Routes.Add(new ServiceRoute("Service2", new WebServiceHostFactory(), typeof(Service2)));
}

这可能吗?或者我的所有服务方法都应该驻留在一个类上?

如何将两个服务类用于WCF REST服务

当然,这是可能的,但在上面的场景中,第一个ServiceRoute将捕获对第二个服务(Service2)的调用,因为看起来对/Service2的调用实际上是对Service1的操作。

RouteTable.Routes.Add(new ServiceRoute("Service1", new WebServiceHostFactory(), typeof(Service1)));
RouteTable.Routes.Add(new ServiceRoute("Service2", new WebServiceHostFactory(), typeof(Service2)));

应该工作。。。

或者,

RouteTable.Routes.Add(new ServiceRoute("Service2", new WebServiceHostFactory(), typeof(Service2)));
RouteTable.Routes.Add(new ServiceRoute("", new WebServiceHostFactory(), typeof(Service1)));

也应该工作。。。但就模糊性而言,这似乎不是一个好主意。