J'ai un problème étrange. Je veux attendre la fin de l'appel asynchrone à l'appel de la fonction de synchronisation. Sur d'autres projets, j'utilise avec succès ResetEvents, mais en sl il ne semble pas fonctionner.silverlight. Attendre la fin async méthode dans la méthode de synchronisation
//Sync call save some value in storage
public static void SaveValue(string key, object value, bool encrypted)
{
if (encrypted)
{
isEncrypting = true;
var Registrator = new RegistratorClient();
Registrator.EncryptCompleted +=Registrator_EncryptCompleted;
Registrator.EncryptAsync(obj); //async call
while (isEncrypting)
Thread.Sleep(10);
return;
}
...
}
static void Registrator_EncryptCompleted(object sender, EncryptCompletedEventArgs e)
{
if (String.IsNullOrEmpty(fieldToSave))
return;
App Appvars = Application.Current as App;
if (Appvars.Settings.Contains(fieldToSave))
Appvars.Settings[fieldToSave] = e.Result;
else
Appvars.Settings.Add(fieldToSave, e.Result);
isEncrypting = false;
}
Cette méthode est fonctionne pas trop :(Aide s'il vous plaît Qu'est-ce qui ne va pas