public async Task <CalendarEntrie> UpdateEntrieAsync(CalendarEntrie entrie)
        {
            var entityEntry = _dbContext.Update(entrie);
            await _dbContext.SaveChangesAsync();

            return(entityEntry.Entity);
        }
        public async Task <CalendarEntrie> AddEntrieAsync(CalendarEntrie entrie)
        {
            var entityEntry = await _dbContext.calendarEntries.AddAsync(entrie);

            await _dbContext.SaveChangesAsync();

            return(entityEntry.Entity);
        }
 public CreateCalendarViewModel(IWindowManager windowManager, IOnCreateCallback onCreateCallback)
 {
     _onCreateCallBack = onCreateCallback;
     _windowManager    = windowManager;
     SelectedEntrie    = new CalendarEntrie {
         StartTime = DateTime.Now, EndTime = DateTime.Now
     };
 }
        public async Task OnChangeAsync(CalendarEntrie calendarEntrie)
        {
            var item = await _calendarRepository.UpdateEntrieAsync(calendarEntrie);

            var oldValue = CalendarEntries.FirstOrDefault(x => x.Id == calendarEntrie.Id);

            if (oldValue != null)
            {
                oldValue = item;
            }

            NotifyOfPropertyChange(() => CalendarEntries);
        }
        public void Entrie_Is_Saved_when_Created()
        {
            Mock <IOnChangeCallback> mock = new Mock <IOnChangeCallback>();

            mock.Setup(x => x.OnChangeAsync(It.IsAny <CalendarEntrie>()))
            .Returns(Task.FromResult(new CalendarEntrie()));

            var entrie = new CalendarEntrie {
                Title = "Title", Description = "Description"
            };

            EditCalendarViewModel viewModel = new EditCalendarViewModel(entrie, null, mock.Object);

            viewModel.Save();
        }
 public async Task RemoveEntrieAsync(CalendarEntrie entrie)
 {
     _dbContext.Remove(entrie);
     await _dbContext.SaveChangesAsync();
 }
        /// <summary>
        /// implementing of callbackInterfaces
        /// </summary>
        public async Task OnCreateAsync(CalendarEntrie calendarEntrie)
        {
            var item = await _calendarRepository.AddEntrieAsync(calendarEntrie);

            CalendarEntries.Add(item);
        }
 public EditCalendarViewModel(CalendarEntrie entrie, IWindowManager windowManager, IOnChangeCallback callback)
 {
     _windowManager    = windowManager;
     _onChangeCallback = callback;
     SelectedEntrie    = entrie;
 }