Exemplo n.º 1
0
        public void TrySaveSettings(SaveSettingsData saveSettingsData)
        {
            var searchedObjects = MedicalTypesConverter.ToDatabaseService(saveSettingsData.SearchedObjects);
            var lastSearch = new MedicalLocatorUserLastSearch
                                 {
                                     Address = saveSettingsData.Address,
                                     CenterType = CenterTypeConverter.ToDatabaseService(saveSettingsData.CenterType),
                                     Latitude = saveSettingsData.Latitude,
                                     Longitude = saveSettingsData.Longitude,
                                     Range = saveSettingsData.Range,
                                     SearchedObjects = new ObservableCollection<MedicalTypeDatabaseService>(searchedObjects)
                                 };

            var client = new DatabaseConnectionServiceClient();
            var saveSettingsResponse = client.SaveSettings(saveSettingsData.Login, saveSettingsData.Password, lastSearch);
            if (!saveSettingsResponse.IsSuccessful)
                throw new InvalidSaveSettingsException(saveSettingsResponse.ErrorMessage);
        }
 public static SaveSettingsResponse SaveSettings(
     this DatabaseConnectionServiceClient client, string login, string password, MedicalLocatorUserLastSearch lastSearch)
 {
     var syncProvider = new ManualResetEvent(false);
     SaveSettingsResponse response = null;
     Exception saveSettingsException = null;
     client.SaveSettingsCompleted += (sender, args) =>
     {
         syncProvider.Set();
         try
         {
             response = args.Result;
         }
         catch (Exception exception)
         {
             saveSettingsException = exception;
         }
     };
     client.SaveSettingsAsync(login, password, lastSearch);
     syncProvider.WaitOne();
     CheckException(saveSettingsException);
     return response;
 }