Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using MongoDB.Driver;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using Globals;
- namespace DataLayer
- {
- public class DataAccess : IData
- {
- private MongoClient client;
- private IMongoDatabase db;
- public DataAccess()
- {
- client = new MongoClient("mongodb://root:Azerty123@ds151631.mlab.com:51631/dblabo4");
- db = client.GetDatabase("dblabo4");
- }
- public List<Student> GetStudents()
- {
- return db.GetCollection<Student>("students").AsQueryable<Student>().ToList();
- }
- public Student GetStudent(string Name)
- {
- return GetStudents().FirstOrDefault(x => x.Name == Name);
- }
- public Student GetStudent(int id)
- {
- return GetStudents().FirstOrDefault(x => x.ID == id);
- }
- public void AddStudent(Student student)
- {
- db.GetCollection<Student>("students").InsertOne(student);
- }
- public void DeleteStudent(int id)
- {
- var builder = Builders<Student>.Filter;
- var filter = builder.Eq(x => x.ID, id);
- db.GetCollection<Student>("students").DeleteOne(filter);
- }
- public List<Course> GetCourses()
- {
- return db.GetCollection<Course>("courses").AsQueryable<Course>().ToList();
- }
- public Course GetCourse(string name)
- {
- return GetCourses().FirstOrDefault(x => x.Name == name);
- }
- public Course GetCourse(int id)
- {
- return GetCourses().FirstOrDefault(x => x.ID == id);
- }
- public void AddCourse(Course course)
- {
- db.GetCollection<Course>("courses").InsertOne(course);
- }
- public void DeleteCourse(int id)
- {
- var builder = Builders<Course>.Filter;
- var filter = builder.Eq(x => x.ID, id);
- db.GetCollection<Course>("courses").DeleteOne(filter);
- }
- public void UpdateCourse(Course course)
- {
- var t = GetCourse(course.ID);
- course._id = t._id;
- var builder = Builders<Course>.Filter;
- var filter = builder.Eq(x => x.ID, course.ID);
- db.GetCollection<Course>("courses").ReplaceOne(filter,course);
- }
- public void Assign(Student student)
- {
- var s = GetStudent(student.ID);
- student._id = s._id;
- var builder = Builders<Student>.Filter;
- var filter = builder.Eq(x => x.ID, student.ID);
- db.GetCollection<Student>("students").ReplaceOne(filter, student);//.AsQueryable<Student>().FirstOrDefault(x=>x.ID == student.ID);
- }
- public bool StudentIdExist(int id)
- {
- return db.GetCollection<Student>("students").AsQueryable<Student>().Any(x => x.ID == id);
- }
- public bool CourseIdExist(int id)
- {
- return db.GetCollection<Course>("courses").AsQueryable<Course>().Any(x => x.ID == id);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement