using Microsoft.Extensions.Options; using MongoDB.Driver; namespace ChatApi { public class SharepointDomvsService { private readonly IMongoCollection _booksCollection; public SharepointDomvsService( IOptions bookStoreDatabaseSettings) { var mongoClient = new MongoClient( bookStoreDatabaseSettings.Value.ConnectionString); var mongoDatabase = mongoClient.GetDatabase( bookStoreDatabaseSettings.Value.DatabaseName); _booksCollection = mongoDatabase.GetCollection( bookStoreDatabaseSettings.Value.SharepointCollectionName); } public async Task> GetAsync() => await _booksCollection.Find(_ => true).ToListAsync(); public async Task GetAsync(string id) => await _booksCollection.Find(x => x.Id == id).FirstOrDefaultAsync(); public async Task CreateAsync(TextoComEmbedding newBook) => await _booksCollection.InsertOneAsync(newBook); public async Task UpdateAsync(string id, TextoComEmbedding updatedBook) => await _booksCollection.ReplaceOneAsync(x => x.Id == id, updatedBook); public async Task RemoveAsync(string id) => await _booksCollection.DeleteOneAsync(x => x.Id == id); } }