Заметил, что MongoDB имеет разные ключевые слова, такие как InsertOne, ReplaceOne и т. Д. Суть Linq (Language Integrated Query) заключалась в том, чтобы иметь универсальный язык, в котором люди могут использовать внедрение зависимостей и переключаться между SQL или NoSQL без значительного изменения синтаксиса.SQL использует .Add () и Remove ().
Есть ли простой способ сделать так, чтобы они имели одинаковый синтаксис?
SQL:
https://docs.microsoft.com/en-us/ef/core/saving/basic
MongoDB:
https://docs.microsoft.com/en-us/aspnet/core/tutorials/first-mongo-app?view=aspnetcore-2.2&tabs=visual-studio
https://docs.mongodb.com/manual/reference/method/db.collection.insertOne/
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);
}
}