예제 #1
0
        public static void Import(SchoolDatabaseContext db, int count)
        {
            var generator = RandomGenerator.Instance;

            var studentsIDs = db.Students.Select(s => s.Id).OrderBy(s => Guid.NewGuid()).ToList();

            for (int i = 0; i < count; i++)
            {
                var course = new Course()
                {
                    Name = generator.GetRandomString(5, 20),
                    Description = generator.GetRandomString(50, 200),
                    Materials = generator.GetRandomString(10, 100),
                };

                var studentsInCourse = generator.GetRandomNumber(20, 30);

                for (int j = 0; j < studentsInCourse; j++)
                {
                    var studentID = studentsIDs[generator.GetRandomNumber(0, studentsIDs.Count - 1)];
                    course.Students.Add(db.Students.Where(s => s.Id == studentID).First());
                }

                db.Courses.Add(course);
            }

            db.SaveChanges();
            Console.WriteLine("{0} Courses imported", count);
        }
예제 #2
0
        public static void Import(SchoolDatabaseContext db, int count)
        {
            var generator = RandomGenerator.Instance;

            var coursesIDs = db.Courses.Select(c => c.Id).OrderBy(c => Guid.NewGuid()).ToList();

            for (int i = 0; i < count; i++)
            {
                var courseID = coursesIDs[generator.GetRandomNumber(0, coursesIDs.Count - 1)];
                var course = db.Courses
                    .Where(c => c.Id == courseID)
                    .First();

                var studentsIDsFromCourse = course.Students.Select(s => s.Id).ToList();

                var studentID = studentsIDsFromCourse[generator.GetRandomNumber(0, studentsIDsFromCourse.Count - 1)];

                db.Homeworks.Add(new Homework()
                {
                    Content = generator.GetRandomString(100, 300),
                    TimeSent = generator.GetRandomDate(DateTime.Now.AddDays(-100), DateTime.Now),
                    StudentId = studentID,
                    CourseId = courseID
                });
            }

            db.SaveChanges();
            Console.WriteLine("{0} Homeworks imported", count);
        }
예제 #3
0
        public static void Import(SchoolDatabaseContext db, int count)
        {
            var generator = RandomGenerator.Instance;

            var studentsIDs = db.Students.Select(s => s.Id).OrderBy(s => Guid.NewGuid()).ToList();

            for (int i = 0; i < count; i++)
            {
                var course = new Course()
                {
                    Name        = generator.GetRandomString(5, 20),
                    Description = generator.GetRandomString(50, 200),
                    Materials   = generator.GetRandomString(10, 100),
                };

                var studentsInCourse = generator.GetRandomNumber(20, 30);

                for (int j = 0; j < studentsInCourse; j++)
                {
                    var studentID = studentsIDs[generator.GetRandomNumber(0, studentsIDs.Count - 1)];
                    course.Students.Add(db.Students.Where(s => s.Id == studentID).First());
                }

                db.Courses.Add(course);
            }

            db.SaveChanges();
            Console.WriteLine("{0} Courses imported", count);
        }
예제 #4
0
        public static void Import(SchoolDatabaseContext db, int count)
        {
            var generator = RandomGenerator.Instance;

            var coursesIDs = db.Courses.Select(c => c.Id).OrderBy(c => Guid.NewGuid()).ToList();

            for (int i = 0; i < count; i++)
            {
                var courseID = coursesIDs[generator.GetRandomNumber(0, coursesIDs.Count - 1)];
                var course   = db.Courses
                               .Where(c => c.Id == courseID)
                               .First();

                var studentsIDsFromCourse = course.Students.Select(s => s.Id).ToList();

                var studentID = studentsIDsFromCourse[generator.GetRandomNumber(0, studentsIDsFromCourse.Count - 1)];

                db.Homeworks.Add(new Homework()
                {
                    Content   = generator.GetRandomString(100, 300),
                    TimeSent  = generator.GetRandomDate(DateTime.Now.AddDays(-100), DateTime.Now),
                    StudentId = studentID,
                    CourseId  = courseID
                });
            }

            db.SaveChanges();
            Console.WriteLine("{0} Homeworks imported", count);
        }
예제 #5
0
        public static void Import(SchoolDatabaseContext db, int count)
        {
            var generator = RandomGenerator.Instance;

            for (int i = 0; i < count; i++)
            {
                db.Students.Add(new Student()
                {
                    Name   = generator.GetRandomString(5, 20),
                    Number = generator.GetRandomNumber(10000, 99999),
                });
            }

            db.SaveChanges();
            Console.WriteLine("{0} Students imported", count);
        }
예제 #6
0
        public IHttpActionResult GetAllStudents()
        {
            IList <StudentViewModel> students = null;

            using (var ctx = new SchoolDatabaseContext())
            {
                students = ctx.Students
                           .Select(s => new StudentViewModel()
                {
                    Id        = s.StudentID,
                    FirstName = s.FirstName,
                    LastName  = s.LastName
                }).ToList <StudentViewModel>();
            }

            if (students.Count == 0)
            {
                return(NotFound());
            }

            return(Ok(students));
        }
예제 #7
0
        static void Main(string[] args)
        {
            Console.WriteLine("Importing data... Be patient, it will take 5-10 seconds");
            using (var db = new SchoolDatabaseContext())
            {
                StudentsImporter.Import(db, 300);
                CoursesImporter.Import(db, 7);
                HomeworksImporter.Import(db, 1200);
            }

            using (var db = new SchoolDatabaseContext())
            {
                var course    = db.Courses.Where(c => c.Id == 2).First();
                var homeworks = course.Homeworks.Where(h => h.TimeSent > DateTime.Now.AddDays(-7));
                Console.WriteLine("Homeworks from course with ID 2 that have been sent in the last week:");

                foreach (var homework in homeworks)
                {
                    Console.WriteLine("Content: {0}", homework.Content);
                    Console.WriteLine("Send by: {0}", homework.Student.Name);
                }
            }
        }
예제 #8
0
        public static void Main()
        {
            //Be patient it is not fast, it will take 5-10 seconds :)
            using (var db = new SchoolDatabaseContext())
            {
                StudentsImporter.Import(db, 300);
                CoursesImporter.Import(db, 7);
                HomeworksImporter.Import(db, 1200);
            }

            using (var db = new SchoolDatabaseContext())
            {
                var course = db.Courses.Where(c => c.Id == 2).First();
                var homeworks = course.Homeworks.Where(h => h.TimeSent > DateTime.Now.AddDays(-7));
                Console.WriteLine("Homeworks from course 2 that have been sent in the last week:");

                foreach (var homework in homeworks)
                {
                    Console.WriteLine("Content: {0}", homework.Content);
                    Console.WriteLine("Send by: {0}", homework.Student.Name);
                }

            }
        }
예제 #9
0
 public StudentsController(SchoolDatabaseContext context)
 {
     _context = context;
 }
예제 #10
0
 public ProfesorsController(SchoolDatabaseContext context)
 {
     _context = context;
 }
 public TeacherRepository(SchoolDatabaseContext ctx)
 {
     context = ctx;
 }
예제 #12
0
 public TeachersController(SchoolDatabaseContext context)
 {
     _context = context;
 }