mirror of
https://bitbucket.org/myhomie/mycorerepository.git
synced 2025-12-06 17:51:20 +00:00
54 lines
1.3 KiB
C#
54 lines
1.3 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Threading.Tasks;
|
|
using MyCore.Interfaces.Models;
|
|
using Microsoft.Extensions.Configuration;
|
|
using MongoDB.Driver;
|
|
|
|
namespace MyCore.Services
|
|
{
|
|
public class BookService
|
|
{
|
|
private readonly IMongoCollection<Book> _books;
|
|
|
|
public BookService(IConfiguration config)
|
|
{
|
|
var client = new MongoClient(config.GetConnectionString("BookstoreDb"));
|
|
var database = client.GetDatabase("BookstoreDb");
|
|
_books = database.GetCollection<Book>("Books");
|
|
}
|
|
|
|
public List<Book> Get()
|
|
{
|
|
return _books.Find(book => true).ToList();
|
|
}
|
|
|
|
public Book Get(string id)
|
|
{
|
|
return _books.Find<Book>(book => book.Id == id).FirstOrDefault();
|
|
}
|
|
|
|
public Book Create(Book book)
|
|
{
|
|
_books.InsertOne(book);
|
|
return book;
|
|
}
|
|
|
|
public void Update(string id, Book bookIn)
|
|
{
|
|
_books.ReplaceOne(book => book.Id == id, bookIn);
|
|
}
|
|
|
|
public void Remove(Book bookIn)
|
|
{
|
|
_books.DeleteOne(book => book.Id == bookIn.Id);
|
|
}
|
|
|
|
public void Remove(string id)
|
|
{
|
|
_books.DeleteOne(book => book.Id == id);
|
|
}
|
|
}
|
|
}
|