Advertisement
Guest User

Untitled

a guest
May 22nd, 2018
194
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.60 KB | None | 0 0
  1. using MongoDB.Driver;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. using Globals;
  8.  
  9. namespace DataLayer
  10. {
  11.     public class DataAccess : IData
  12.     {
  13.         private MongoClient client;
  14.         private IMongoDatabase db;
  15.         public DataAccess()
  16.         {
  17.             client = new MongoClient("mongodb://root:Azerty123@ds151631.mlab.com:51631/dblabo4");
  18.             db = client.GetDatabase("dblabo4");
  19.         }
  20.  
  21.         public List<Student> GetStudents()
  22.         {
  23.             return db.GetCollection<Student>("students").AsQueryable<Student>().ToList();
  24.         }
  25.         public Student GetStudent(string Name)
  26.         {
  27.             return GetStudents().FirstOrDefault(x => x.Name == Name);
  28.         }
  29.         public Student GetStudent(int id)
  30.         {
  31.             return GetStudents().FirstOrDefault(x => x.ID == id);
  32.         }
  33.  
  34.         public void AddStudent(Student student)
  35.         {
  36.             db.GetCollection<Student>("students").InsertOne(student);
  37.         }
  38.         public void DeleteStudent(int id)
  39.         {
  40.             var builder = Builders<Student>.Filter;
  41.             var filter = builder.Eq(x => x.ID, id);
  42.             db.GetCollection<Student>("students").DeleteOne(filter);
  43.         }
  44.         public List<Course> GetCourses()
  45.         {
  46.             return db.GetCollection<Course>("courses").AsQueryable<Course>().ToList();
  47.         }
  48.         public Course GetCourse(string name)
  49.         {
  50.             return GetCourses().FirstOrDefault(x => x.Name == name);
  51.         }
  52.         public Course GetCourse(int id)
  53.         {
  54.             return GetCourses().FirstOrDefault(x => x.ID == id);
  55.         }
  56.  
  57.         public void AddCourse(Course course)
  58.         {
  59.             db.GetCollection<Course>("courses").InsertOne(course);
  60.         }
  61.         public void DeleteCourse(int id)
  62.         {
  63.             var builder = Builders<Course>.Filter;
  64.             var filter = builder.Eq(x => x.ID, id);
  65.             db.GetCollection<Course>("courses").DeleteOne(filter);
  66.         }
  67.  
  68.         public void UpdateCourse(Course course)
  69.         {
  70.             var t = GetCourse(course.ID);
  71.             course._id = t._id;
  72.             var builder = Builders<Course>.Filter;
  73.             var filter = builder.Eq(x => x.ID, course.ID);
  74.             db.GetCollection<Course>("courses").ReplaceOne(filter,course);
  75.         }
  76.         public void Assign(Student student)
  77.         {
  78.             var s = GetStudent(student.ID);
  79.             student._id = s._id;
  80.             var builder = Builders<Student>.Filter;
  81.             var filter = builder.Eq(x => x.ID, student.ID);
  82.             db.GetCollection<Student>("students").ReplaceOne(filter, student);//.AsQueryable<Student>().FirstOrDefault(x=>x.ID == student.ID);
  83.         }
  84.  
  85.  
  86.         public bool StudentIdExist(int id)
  87.         {
  88.             return db.GetCollection<Student>("students").AsQueryable<Student>().Any(x => x.ID == id);
  89.         }
  90.  
  91.         public bool CourseIdExist(int id)
  92.         {
  93.             return db.GetCollection<Course>("courses").AsQueryable<Course>().Any(x => x.ID == id);
  94.         }
  95.     }
  96. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement