Example #1
0
        public async Task <IActionResult> Update(Series series)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            using (var db = new SakurAniLibContext(this.ConnectionString))
            {
                var updatedSeries = await db.Series.FirstOrDefaultAsync(s => s.Id == series.Id);

                if (updatedSeries == null)
                {
                    return(NotFound());
                }

                // update values
                updatedSeries.Id     = series.Id;
                updatedSeries.Name   = series.Name;
                updatedSeries.Amount = series.Amount;

                // Save
                await db.SaveChangesAsync();

                return(Ok(series));
            }
        }
Example #2
0
 public async Task <IEnumerable <Series> > Get()
 {
     using (var db = new SakurAniLibContext(this.ConnectionString))
     {
         return(await db.Series.ToListAsync());
     }
 }
Example #3
0
        public async Task <IActionResult> Update(Genre genre)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            using (var db = new SakurAniLibContext(this.ConnectionString))
            {
                var updatedGenre = await db.Genre.FirstOrDefaultAsync(g => g.Id == genre.Id);

                if (updatedGenre == null)
                {
                    return(NotFound());
                }

                // update values
                updatedGenre.Id   = genre.Id;
                updatedGenre.Name = genre.Name;

                // Save
                await db.SaveChangesAsync();

                return(Ok(genre));
            }
        }
Example #4
0
        public async Task <IActionResult> Update(Author author)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            using (var db = new SakurAniLibContext(this.ConnectionString))
            {
                var updatedAuthor = await db.Author.FirstOrDefaultAsync(a => a.Id == author.Id);

                if (updatedAuthor == null)
                {
                    return(NotFound());
                }

                // update values
                updatedAuthor.Id       = author.Id;
                updatedAuthor.Name     = author.Name;
                updatedAuthor.IsArtist = author.IsArtist;

                // Save
                await db.SaveChangesAsync();

                return(Ok(author));
            }
        }
Example #5
0
        public async Task <IActionResult> GetBooksByGenre(string id)
        {
            using (var db = new SakurAniLibContext(this.ConnectionString))
            {
                var booksByGenre = new List <Book>();

                // Query BookGenre Info from Intersection Table
                var bookGenreList = await(from b in db.Book_Genre
                                          where b.GenreId == id
                                          select b).ToListAsync();

                if (bookGenreList.Count == 0)
                {
                    return(NoContent());
                }

                // Get detailed Book info for each isbn
                foreach (var bookGenre in bookGenreList)
                {
                    var book = await db.Book.FirstOrDefaultAsync(b => b.Isbn == bookGenre.Isbn);

                    booksByGenre.Add(book);
                }

                return(Ok(booksByGenre));
            }
        }
Example #6
0
        public async Task <IActionResult> Update(Book book)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            using (var db = new SakurAniLibContext(this.ConnectionString))
            {
                var updatedBook = await db.Book.FirstOrDefaultAsync(b => b.Isbn == book.Isbn);

                if (updatedBook == null)
                {
                    return(NotFound());
                }

                // update values
                updatedBook.Isbn         = book.Isbn;
                updatedBook.Title        = book.Title;
                updatedBook.Price        = book.Price;
                updatedBook.Picture      = book.Picture;
                updatedBook.SeriesNumber = book.SeriesNumber;
                updatedBook.Currency     = book.Currency;
                updatedBook.Type         = book.Type;

                // Save
                await db.SaveChangesAsync();

                return(Ok(book));
            }
        }
Example #7
0
        public async Task <IActionResult> GetAuthor(string id)
        {
            using (var db = new SakurAniLibContext(this.ConnectionString))
            {
                var author = await db.Author.FirstOrDefaultAsync(a => a.Id == id);

                if (author == null)
                {
                    return(NotFound());
                }

                return(Ok(author));
            }
        }
Example #8
0
        public async Task <IActionResult> GetBook(string isbn)
        {
            using (var db = new SakurAniLibContext(this.ConnectionString))
            {
                var book = await db.Book.FirstOrDefaultAsync(b => b.Isbn == isbn);

                if (book == null)
                {
                    return(NotFound());
                }

                return(Ok(book));
            }
        }
Example #9
0
        public async Task <IActionResult> Create(Series series)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            using (var db = new SakurAniLibContext(this.ConnectionString))
            {
                await db.Series.AddAsync(series);

                await db.SaveChangesAsync();

                return(Created($"/api/series/{series.Id}", series));
            }
        }
Example #10
0
        public async Task <IActionResult> Create(Book_Author book_author)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            using (var db = new SakurAniLibContext(this.ConnectionString))
            {
                await db.Book_Author.AddAsync(book_author);

                await db.SaveChangesAsync();

                return(Created($"/api/book_author/{book_author.Id}", book_author));
            }
        }
Example #11
0
        public async Task <IActionResult> Create(Genre genre)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            using (var db = new SakurAniLibContext(this.ConnectionString))
            {
                await db.Genre.AddAsync(genre);

                await db.SaveChangesAsync();

                return(Created($"/api/genre/{genre.Id}", genre));
            }
        }
Example #12
0
        public async Task <IActionResult> Delete(string id)
        {
            using (var db = new SakurAniLibContext(this.ConnectionString))
            {
                var series = await db.Series.FirstOrDefaultAsync(s => s.Id == id);

                if (series == null)
                {
                    return(NotFound());
                }

                db.Series.Remove(series);
                await db.SaveChangesAsync();

                return(new NoContentResult());
            }
        }
Example #13
0
        public async Task <IActionResult> Delete(int id)
        {
            using (var db = new SakurAniLibContext(this.ConnectionString))
            {
                var book_author = await db.Book_Author.FirstOrDefaultAsync(b => b.Id == id);

                if (book_author == null)
                {
                    return(NotFound());
                }

                db.Book_Author.Remove(book_author);
                await db.SaveChangesAsync();

                return(new NoContentResult());
            }
        }
Example #14
0
        public async Task <IActionResult> Delete(string id)
        {
            using (var db = new SakurAniLibContext(this.ConnectionString))
            {
                var genre = await db.Genre.FirstOrDefaultAsync(g => g.Id == id);

                if (genre == null)
                {
                    return(NotFound());
                }

                db.Genre.Remove(genre);
                await db.SaveChangesAsync();

                return(new NoContentResult());
            }
        }
Example #15
0
        public async Task <IActionResult> Delete(string isbn)
        {
            using (var db = new SakurAniLibContext(this.ConnectionString))
            {
                var book = await db.Book.FirstOrDefaultAsync(b => b.Isbn == isbn);

                if (book == null)
                {
                    return(NotFound());
                }

                db.Book.Remove(book);
                await db.SaveChangesAsync();

                return(new NoContentResult());
            }
        }