2011-04-08 13 views
8

Ho un'app WCF che utilizzava più servizi, ma ora li abbiamo rifattorizzati in un unico servizio, tuttavia i client continueranno a chiamarli sui loro vecchi URL.utilizzando i caratteri jolly in ServiceRoute

Per potevano ospitare questo uso il RouteTable per instradare loro per la singola implementazione come questo

RouteTable.Routes.Add(new ServiceRoute("Services/MyoldService.svc", 
          new MyServiceFactory("MyoldService"), typeof(Service1))); 

E 'possibile specificare che tutti i servizi vanno ad una singola implementazione utilizzando una sorta di jolly nel pattern URL del ServiceRoute?

Quindi qualcosa di simile

RouteTable.Routes.Add(new ServiceRoute("Services/*.svc", 
          new MyServiceFactory("MyoldService"), typeof(Service1))); 

o qualsiasi altro modo di realizzare lo stesso obiettivo.

+0

stai cercando 'Tabelle filtro'? –

+0

vedere http://www.codeproject.com/Articles/772854/WCF-Routing-Service-Part-I-Basic-Concept-Simple-Ro –

+0

si desidera evitare 'IgnoreRoute' qualcosa O si desidera reindirizzare il nuovo servizio – wiretext

risposta

0

provare a utilizzare {dontcare} invece di * Dal ServiceRoute eredita dalla Route questo sembra come dovrebbe funzionare sulla base di documentazione MSDN

+0

Questo non sembra funzionare per me, non sembra gradire parentesi graffe. – Chris

+1

Dal [codice di riferimento] (http://referencesource.microsoft.com/#System.ServiceModel.Activation/System/ServiceModel/Activation/ServiceRoute.cs,ec5812c2847148d7) sembra che sarebbe un'eccezione se viene trovata una parentesi graffa. Qualcuno può chiarire se ho capito correttamente? – DDan

+0

Sì, lo ha fatto per me. – Chris

Problemi correlati