49 lines
1.4 KiB
C#

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 ProviderService
{
private readonly IMongoCollection<Provider> _Providers;
public ProviderService(IConfiguration config)
{
var client = new MongoClient(config.GetConnectionString("MyCoreDb"));
var database = client.GetDatabase("MyCoreDb");
_Providers = database.GetCollection<Provider>("Providers");
}
public List<Provider> GetProviders()
{
return _Providers.Find(p => true).ToList();
}
public Provider GetProviderById(string id)
{
return _Providers.Find<Provider>(p => p.Id == id).FirstOrDefault();
}
public Provider CreateProvider(Provider provider)
{
_Providers.InsertOne(provider);
return provider;
}
public Provider Update(string id, Provider providerIn)
{
_Providers.ReplaceOne(provider => provider.Id == id, providerIn);
return providerIn;
}
public void Remove(string id)
{
_Providers.DeleteOne(provider => provider.Id == id);
}
}
}