using MongoDB.Driver;
using RouteGuideMongoDBImplement.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace RouteGuideMongoDBImplement
{
///
/// Класс для взаимодействия с базой данных
///
public class RouteGuideDatabase : IDisposable
{
///
/// Клиент
///
public readonly MongoClient _client;
///
/// База данных
///
private readonly IMongoDatabase _database;
///
/// Конструктор
///
/// Параметры подключения к базе данных
/// Название базы данных
public RouteGuideDatabase(string connectionString = "mongodb://localhost:27017",
string databaseName = "RouteGuideDatabase")
{
_client = new MongoClient(connectionString);
_database = _client.GetDatabase(databaseName);
}
///
/// Коллекция "Водители"
///
public IMongoCollection Drivers => _database.GetCollection("Drivers");
///
/// Коллекция "Транспорт"
///
public IMongoCollection Transport => _database.GetCollection("Transport");
///
/// Коллекция "Маршруты"
///
public IMongoCollection Routes => _database.GetCollection("Routes");
///
/// Коллекция "Остановки"
///
public IMongoCollection Stops => _database.GetCollection("Stops");
///
/// Коллекция "Расписания"
///
public IMongoCollection Schedules => _database.GetCollection("Schedules");
///
/// Освободить ресурсы
///
public void Dispose() { }
}
}