Пример #1
0
        public async Task SaveCalendar(CalendarBase calendar)
        {
            var entity = ICalendarToEntity(calendar);

            using (var context = new CalendarCacheContext())
            {
                await context.CalendarCache.AddAsync(entity);

                await context.SaveChangesAsync();
            }
        }
Пример #2
0
        /// <summary>
        /// Add or Update calendar.
        /// </summary>
        /// <param name="calendar">The calaendar item to Add or Update</param>
        /// <returns></returns>
        public async Task AddUpdateCalendarCache(CalendarBase calendar)
        {
            using (var context = new CalendarCacheContext())
            {
                var match = from item in context.CalendarCache
                            where item.CalendarId == calendar.Id && item.UserId == calendar.UserId
                            select item;

                if (match.Any())
                {
                    var entity = match.First();
                    entity.IsEnabled     = calendar.IsEnabled;
                    entity.OverrideColor = calendar.OverrideColor;
                    context.Update(entity);

                    await context.SaveChangesAsync();

                    return;
                }
            }

            await SaveCalendar(calendar);
        }