private async void OnClearList() { OnInfoRequested(LanguageChanger.Instance["BlackListVm_Code4"]); await Task.Run(() => { var result = _ioSecurity.StoreData(new List <ProcessModel>()); if (result.Success) { _isError = false; OnInfoRequested(LanguageChanger.Instance["BlackListVm_Code5"]); var refreshResult = _serviceLifetimeController.RefreshService(); if (refreshResult.Success) { OnInfoRequested(LanguageChanger.Instance["BlackListVm_Code6"]); } else { OnError(refreshResult.ErrorMessage); } } else { OnError(result.ErrorMessage); OnInfoRequested(LanguageChanger.Instance["BlackListVm_Code7"]); } }); if (!_isError) { BlackList.Clear(); //to avoid CrossThreadException } }
private async void OnAdd() { OnInfoRequested(LanguageChanger.Instance["AddItemsVm_Code1"]); await Task.Run(() => { var result = _ioSecurity.RetrieveData(); if (result.MainResult.Success) { List <ProcessModel> list = (from item in ItemsToAdd select _ioSecurity.CreateProcessModel(item).Data).ToList(); int itemsAdded = 0; foreach (ProcessModel model in list) { if (!result.Data.Any(x => x.ProcessName.Equals(model.ProcessName, StringComparison.InvariantCultureIgnoreCase))) { result.Data.Add(model); itemsAdded++; } } if (itemsAdded > 0) { var addResult = _ioSecurity.StoreData(result.Data); if (addResult.Success) { OnInfoRequested(LanguageChanger.Instance["AddItemsVm_Code2"]); var refreshResult = _serviceLifetimeController.RefreshService(); if (refreshResult.Success) { OnInfoRequested(LanguageChanger.Instance["AddItemsVm_Code3"]); } else { OnError(refreshResult.ErrorMessage); } } else { OnError(addResult.ErrorMessage); } } else { OnInfoRequested(LanguageChanger.Instance["AddItemsVm_Code4"]); } } else { OnError(LanguageChanger.Instance["AddItemsVm_Code5"]); } }); ItemsToAdd.Clear(); }