コード例 #1
0
        public async Task <Slide> CreateAsync(Slide document)
        {
            using (var db = new SlideShowDbContext(_writeDb))
            {
                db.Slides.Add(document);
                await db.SaveChangesAsync();
            }

            return(document);
        }
コード例 #2
0
        public async Task DeleteAsync(string documentId)
        {
            using (var db = new SlideShowDbContext(_writeDb))
            {
                var document = await db.Slides.FirstOrDefaultAsync(x => x.DocumentId == documentId);

                db.Slides.Remove(document);
                await db.SaveChangesAsync();
            }
        }
コード例 #3
0
        public async Task <Slide> UpdateAsync(Slide document)
        {
            // TODO: How to handle non-Drive image URLs?  Thumbnails handled how?
            using (var db = new SlideShowDbContext(_writeDb))
            {
                db.Attach(document);
                db.Entry(document).State = EntityState.Modified;

                await db.SaveChangesAsync();
            }

            return(document);
        }
コード例 #4
0
        public async Task DeleteByIdsAsync(IEnumerable <string> documentIds)
        {
            using (var db = new SlideShowDbContext(_writeDb))
            {
                var delete = documentIds.Select(x => db.Slides.SingleOrDefault(y => y.DocumentId == x)).Where(x => x != null);

                foreach (var item in delete)
                {
                    db.Slides.Remove(item);
                }

                await db.SaveChangesAsync();
            }
        }