如何为WCF REST服务使用两个服务类?

时间:2012-03-01 17:58:54

标签: c# .net wcf rest

我有一个使用WCF Rest服务模板构建的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)));
}

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

1 个答案:

答案 0 :(得分:1)

当然,这是可能的,但在上面的场景中,第一个ServiceRoute将捕获对第二个Service(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)));

也应该起作用......但就模棱两可而言似乎并不是一个好主意。