C# WCF—使用路由模块时获取匹配的路由

C# WCF—使用路由模块时获取匹配的路由,c#,wcf,routing,C#,Wcf,Routing,我目前正在创建一个restful WCF项目,我需要获取当前请求正在执行的方法,我找到的所有示例都告诉我从请求头或端点分派器获取操作名称。但是,我无法访问这些。我认为这是因为我没有任何配置的端点。相反,我使用路由模块来实现REST-ful URL。例如,my Gobal.asax.cs中定义了以下内容: RouteTable.Routes.Add(new ServiceRoute("authentication", new MavizonWebServiceHostFactory(), type

我目前正在创建一个restful WCF项目,我需要获取当前请求正在执行的方法,我找到的所有示例都告诉我从请求头或端点分派器获取操作名称。但是,我无法访问这些。我认为这是因为我没有任何配置的端点。相反,我使用路由模块来实现REST-ful URL。例如,my Gobal.asax.cs中定义了以下内容:

RouteTable.Routes.Add(new ServiceRoute("authentication", new MavizonWebServiceHostFactory(), typeof(AuthenticationService)));
RouteTable.Routes.Add(new ServiceRoute("offers", new MavizonWebServiceHostFactory(), typeof(OfferService)));
RouteTable.Routes.Add(new ServiceRoute("settings", new MavizonWebServiceHostFactory(), typeof(SettingsService)));
RouteTable.Routes.Add(new ServiceRoute("user/cars", new MavizonWebServiceHostFactory(), typeof(CarService)));
RouteTable.Routes.Add(new ServiceRoute("user/notifications", new MavizonWebServiceHostFactory(), typeof(NotificationService)));
RouteTable.Routes.Add(new ServiceRoute("user", new MavizonWebServiceHostFactory(), typeof(UserService)));
RouteTable.Routes.Add(new ServiceRoute("version", new MavizonWebServiceHostFactory(), typeof(MetaService)));
我试图从授权管理器获取此信息,因此我试图使用OperationContext获取此信息

非常感谢您的帮助!谢谢-

更新

我尝试在ServiceAuthorizationManager中使用以下调用:

System.ServiceModel.OperationContext.Current.IncomingMessageProperties["HttpOperationName"] as string;
但是什么也没有归还。但是,当我在服务方法中调用它时,我收到了服务的名称。这意味着此时尚未决定将调用哪个方法


因此,新的问题是:我应该使用什么扩展点来注入依赖于知道调用什么服务方法的自定义代码,还是可以在生命周期的早期调用路由匹配服务。。。。我放弃了。WCF有很多可扩展性点,我只是在WCF生命周期的后面选择了一个点,在这个点上对操作选择做出了决定

如果有人对这个问题有答案,我很乐意把我的答案改成你的。谢谢