using System.Collections.Generic; using retns.api.Data.Models; using Microsoft.Extensions.Configuration; using MongoDB.Driver; using System.Threading.Tasks; namespace retns.api.Data { public class HomeworkService { private readonly IMongoCollection _homeworkWeeks; public HomeworkService(IConfiguration config) { var client = new MongoClient(config.GetConnectionString("HomeworkDb")); var database = client.GetDatabase("retns"); _homeworkWeeks = database.GetCollection("Homework"); } public async Task> Get() { return (await _homeworkWeeks.FindAsync(homework => true)).ToList(); } public async Task Get(string id) { return (await _homeworkWeeks.FindAsync(homework => homework.Id == id)).FirstOrDefault(); } public async Task Create(HomeworkWeek homework) { await _homeworkWeeks.InsertOneAsync(homework); return homework; } public async Task Update(string id, HomeworkWeek homeworkIn) { await _homeworkWeeks.ReplaceOneAsync(homework => homework.Id == id, homeworkIn); } public async Task Remove(HomeworkWeek homeworkIn) { await _homeworkWeeks.DeleteOneAsync(homework => homework.Id == homeworkIn.Id); } public async Task Remove(string id) { await _homeworkWeeks.DeleteOneAsync(homework => homework.Id == id); } } }