public async Task <Slide> CreateAsync(Slide document) { using (var db = new SlideShowDbContext(_writeDb)) { db.Slides.Add(document); await db.SaveChangesAsync(); } return(document); }
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(); } }
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); }
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(); } }