public NewTaskWindowViewModel(Task task) { Task = task; TrackingGroup.RegisterObject(Task); using (var client = new MainServiceClient()) Accounts = client.GetAccounts(task.ProjectId); }
/// <summary> /// Add a new group to the database and return the result. /// </summary> /// <returns></returns> public TrackingGroup Add() { var result = new TrackingGroup(); _dataStore.Save(result); return(result); }
/// <summary> /// Add the provided tracking group to the database. /// </summary> /// <param name="trackingGroup"></param> public void Add(TrackingGroup trackingGroup) { if (trackingGroup == null) { throw new ArgumentException("The tracking group cannot be null"); } _dataStore.Save(trackingGroup); }
/// <summary> /// Add a new group and with the provided display name and return the result. /// </summary> /// <param name="displayName"></param> /// <returns></returns> public TrackingGroup Add(string displayName) { var result = new TrackingGroup(); result.DisplayName = displayName; _dataStore.Save(result); return(result); }
public NewTaskWindowViewModel(int projectId) { Task = new Task() { ProjectId = projectId, State = Data.Enums.TaskState.New }; TrackingGroup.RegisterObject(Task); using (var client = new MainServiceClient()) Accounts = client.GetAccounts(projectId); }
protected virtual bool SaveEditItem() { using (var saving = new SavingServiceClient()) { try { PrepareItemForSave(); if (EditItem.Id == 0) { saving.CascadeInsert(EditItem); } else { foreach (var item in TrackingGroup.GetTrackingResult <EFHistoryModel <int> >(x => x.HasFlag(TrackingState.Added))) { if (item.Id == 0) { saving.CascadeInsert(item); } else { saving.Modify(item); } } foreach (var item in TrackingGroup.GetTrackingResult <EFHistoryModel <int> >(x => x.HasFlag(TrackingState.Deleted))) { if (item is EFExcludableModel <int> excludable) { saving.Delete(excludable); } else { saving.Remove(item); } } foreach (var item in TrackingGroup.GetTrackingResult <EFHistoryModel <int> >(x => x.HasFlag(TrackingState.Changed) && !x.HasFlag(TrackingState.Added))) { saving.Modify(item); } } saving.Commit(); return(true); } catch (Exception ex) { saving.Rollback(); WPFTools.Log.LogException(ex); return(false); } } }
/// <summary> /// Update the database with the provided tracking group. /// </summary> /// <param name="trackingGroup"></param> public void Update(TrackingGroup trackingGroup) { _dataStore.Save(trackingGroup); }
/// <summary> /// Delete the provided tracking group from the database. /// </summary> /// <param name="trackingGroup"></param> public void Delete(TrackingGroup trackingGroup) { _dataStore.Delete(trackingGroup); }