// ViewModel Search Worker // --------------------------------------------------------------------------------------------------------------------------------------------- private void getDataTaskStart(object sender, TaskWorkerEventArgs e) { if (e.Parameters == null && e.Parameters is int == false) { return; } simulatedDelay(); if (getDataTask.CancellationRequested) { return; } int index = (int)e.Parameters; SQLFunctions sqlFunctions = new SQLFunctions(SQLConnection.DatabaseContext); MultiModel displayModel = null; displayModel = sqlFunctions.GetPersonDetails(PersonTableResults[index].PersonID); if (getDataTask.CancellationRequested) { return; } if (displayModel != null) { BitmapImage bitmapImage = ImageSourceReader.Read(displayModel.PhotoURL); e.Results = new Tuple <MultiModel, BitmapImage>(displayModel, bitmapImage);; } }
private void addNewPerson() { PersonDataResults = new MultiModel() { PersonDataTable = new PersonData(), AddressDataTable = new AddressData(), DetailsDataTable = new DetailsData(), }; }
public bool UpdateData(MultiModel multiModel) { try { databaseContext.Entry(multiModel.PersonDataTable).State = EntityState.Modified; databaseContext.SaveChanges(); return(true); } catch (Exception Ex) { LogWriter.Exception("Error updating data.", Ex); return(false); } }
public bool AddData(MultiModel multiModel) { try { multiModel.PersonDataTable.AddressData = multiModel.AddressDataTable; multiModel.PersonDataTable.DetailsData = multiModel.DetailsDataTable; databaseContext.PersonData.Add(multiModel.PersonDataTable); databaseContext.SaveChanges(); SQLConnection.UpdateTableCount(1); return(true); } catch (Exception Ex) { LogWriter.Exception("Error updating data.", Ex); return(false); } }
public bool DeleteData(MultiModel multiModel) { try { // Although my SQL table is set to cascade, I am going to be safe and delete the tables individually. databaseContext.Entry(multiModel.AddressDataTable).State = EntityState.Deleted; databaseContext.Entry(multiModel.DetailsDataTable).State = EntityState.Deleted; databaseContext.SaveChanges(); databaseContext.Entry(multiModel.PersonDataTable).State = EntityState.Deleted; databaseContext.SaveChanges(); SQLConnection.UpdateTableCount(-1); return(true); } catch (Exception Ex) { LogWriter.Exception("Error updating data.", Ex); return(false); } }
// Constructor // --------------------------------------------------------------------------------------------------------------------------------------------- public AddEditViewModel(DialogData data) : base(data) { Modify = new RelayCommand(modifyCommand); Clear = new RelayCommand(clearCommand); Browse = new RelayCommand(browseCommand); Catalog = new RelayCommand(catalogCommand); Delete = new RelayCommand(deleteCommand); // This is an edit window if we are passed in data. if (data.Parameter1 is MultiModel) { try { ModifyContent = "Modify"; PersonDataResults = data.Parameter1 as MultiModel; Firstname = PersonDataResults.Firstname; Lastname = PersonDataResults.Lastname; Street = PersonDataResults.Street; City = PersonDataResults.City; State = PersonDataResults.State; Zipcode = PersonDataResults.Zipcode; Phone = PersonDataResults.Phone; Age = PersonDataResults.Age; Interests = PersonDataResults.Interests; loadImage(PersonDataResults.PhotoURL); } catch (Exception Ex) { LogWriter.Exception("Error loading in person data from parameter.", Ex); } } else { addNewPerson(); } }