using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using MyCore.Models; using Microsoft.Extensions.Configuration; using MongoDB.Driver; using MyCore.Models.MyControlPanel; namespace MyCore.Services.MyControlPanel { public class DeviceService { private readonly IMongoCollection _Devices; public DeviceService(IConfiguration config) { var client = new MongoClient(config.GetConnectionString("MyCoreDb")); var database = client.GetDatabase("MyCoreDb"); _Devices = database.GetCollection("Devices"); } public List GetDevices() { return _Devices.Find(d => true).ToList(); } public Device GetDeviceById(string id) { return _Devices.Find(d => d.Id == id).FirstOrDefault(); } public Device CreateDevice(Device device) { _Devices.InsertOne(device); return device; } public Device Update(string id, Device deviceIn) { _Devices.ReplaceOne(device => device.Id == id, deviceIn); return deviceIn; } public void Remove(string id) { _Devices.DeleteOne(device => device.Id == id); } } }