J'ai une application silverlight qui doit utiliser plusieurs services WCF. Les points de terminaison (URL) des services ne peuvent pas être codés en dur dans l'application Silverlight ou dans le fichier de configuration. Ils doivent être interrogés à partir d'un registre de service qui est lui-même un service WCF. Le problème est que je dois utiliser un appel asynchrone pour interroger le point de terminaison de service avant de pouvoir créer une instance du proxy de service réel. Je ne peux pas penser à un bon moyen d'attendre la réponse ou de bloquer les appels au service réel. Quelle est la meilleure façon d'utiliser le modèle Service Registry/Service Locator à partir de quelle application Silverlight?Utilisation d'un registre de service wcf/localisateur de service de Silverlight
var registry = new ServiceRegistryClient("http://localhost/ServiceRegistry.svc");
string url;
registry.GetServiceCompleted += (s, e) => url = e.Result;
registry.GetServiceAsync("MyService");
// now I want to create MyService, but I must wait somehow until url is returned
var myService = new MyServiceClient(url);
myService.DoSomethingAsync();