public ICollection<Course> Get() { var db = new StudentSystemDbContext(); var coursesRepo = new GenericRepository<Course>(db); List<Course> courses = coursesRepo.All().ToList(); return courses; }
private static void PrintCalculationForEachStudent(StudentSystemDbContext context) { var students = context .Students .Where(x => x.Courses.Any()) .Select(x => new { StudentName = x.Name, EnrolledCourses = x.Courses.Count, TotalSumPaid = x.Courses.Sum(c => c.Course.Price), AveragePriceForCourse = x.Courses.Average(c => c.Course.Price) }) .OrderByDescending(x => x.TotalSumPaid) .ThenByDescending(x => x.EnrolledCourses) .ThenBy(x => x.StudentName) .ToArray(); foreach (var student in students) { if (student.EnrolledCourses != 0) { Console.WriteLine($"{student.StudentName}"); Console.WriteLine($" --Number of enrolled courses: {student.EnrolledCourses}"); Console.WriteLine($" --Total price paid: $ {student.TotalSumPaid}"); Console.WriteLine($" --Average price paid for course: $ {student.AveragePriceForCourse.ToString("f2")}"); } } }
public ICollection<Test> Get() { var db = new StudentSystemDbContext(); var testsRepo = new GenericRepository<Test>(db); List<Test> tests = testsRepo.All().ToList(); return tests; }
protected override void Seed(StudentSystemDbContext context) { var student = new Student { Name = "Dragan", ClassNumber = "65546", City = "Kaspichan", BirthDate = new DateTime(1996, 1, 1), Gender = Gender.Male }; var homework = new Homework { Content = "Some content", TimeSendInMinutes = 240 }; var course = new Course { Name = "Programming", Hours = 100, Materials = "Some materials about programming course" }; student.Courses.Add(course); student.Homeworks.Add(homework); course.Students.Add(student); course.Homeworks.Add(homework); context.Students.AddOrUpdate(s => s.Name, student); }
public static void Main() { Database.SetInitializer(new MigrateDatabaseToLatestVersion <StudentSystemDbContext, Configuration>()); var db = new StudentSystemDbContext(); db.Database.Initialize(true); var student = new Student { Age = 30, FirstName = "Ivan", LastName = "Goshov", StudentStatus = StudentStatus.Online }; student.Courses.Add(new Course { Name = "Entity Framework Rocks!" }); db.Students.Add(student); db.SaveChanges(); var savedStudent = db.Students.First(); Console.WriteLine(savedStudent.Id + ": " + savedStudent.FirstName + " " + savedStudent.LastName); }
public static void Main() { using (var db = new StudentSystemDbContext()) { db.Database.Migrate(); //SeedInitialData(db); //SeedLicensesDb(db); //PrintStudentsWithHomeworks(db); //PrintCoursesAndResources(db); //PrintCoursesWithMoreThanFiveResources(db); //PrintCourseActiveOnADate(db); //PrintStudentsWithPrices(db); //PrintCourseWithResoucesAndLicenses(db); PrintStudentsWithCourcesAndResourcesAndLicenses(db); } }
public void SaveStudentMarks(IList <TeacherStudentServiceModel> students, int courseId) { using (var data = new StudentSystemDbContext()) { bool isValid = ValidateStudentsMark(students); if (!isValid) { throw new InvalidOperationException(INVALID_STUDENT_MARK); } var exportData = data.StudentCourses .Where(x => x.CourseId == courseId) .ToArray(); for (int i = 0; i < exportData.Length; i++) { var mark = students[i].Mark; if (mark != null) { exportData[i].Mark = Math.Round((double)mark, 2, MidpointRounding.ToEven); } } data.SaveChanges(); } }
private static void Task21_PrintStudentsAndHomeworks(StudentSystemDbContext db) { var taskResult = db .Students .Select(s => new { s.Name, Homeworks = s.Homeworks.Select(h => new { h.Content, h.Type }) }) .ToList(); foreach (var student in taskResult) { Console.WriteLine(student.Name); foreach (var homework in student.Homeworks) { Console.WriteLine($"---{homework.Content} - {homework.Type}"); } } }
public IHttpActionResult Post(TestRequestModel model) { if (model == null) { return this.BadRequest(); } var db = new StudentSystemDbContext(); var testsRepo = new GenericRepository<Test>(db); var coursesRepo = new GenericRepository<Course>(db); List<Course> allCourses = coursesRepo.All().ToList(); var testCourse = new Course { Name = model.Course.Name, Description = model.Course.Description }; var testToAdd = new Test { Course = testCourse }; testsRepo.Add(testToAdd); testsRepo.SaveChanges(); return this.Ok(); }
public IHttpActionResult Post(HomeworkRequestModel model) { if (model == null) { return this.BadRequest(); } var db = new StudentSystemDbContext(); var homeworsRepo = new GenericRepository<Homework>(db); var coursesRepo = new GenericRepository<Course>(db); var studentsRepo = new GenericRepository<Student>(db); Course defaultCourse = coursesRepo.All().ToList().FirstOrDefault(); Student defaultStudent = studentsRepo.All().ToList().FirstOrDefault(); var homeworkToAdd = new Homework { FileUrl = model.FileUrl, TimeSent = new DateTime(model.TimeSentTicks), Course = defaultCourse, CourseId = defaultCourse.Id, Student = defaultStudent, StudentIdentification = defaultStudent.StudentIdentification }; homeworsRepo.Add(homeworkToAdd); homeworsRepo.SaveChanges(); return this.Ok(); }
//02 Working with the Database private static void AllCoursesAndResourses(StudentSystemDbContext db) { var courses = db.Courses.Select(c => new { c.Name, c.Description, c.StartDate, c.EndDate, c.Resources }) .OrderBy(x => x.StartDate) .ThenBy(c => c.EndDate) .ToArray(); foreach (var c in courses) { Console.WriteLine($"Name - {c.Name} => Descrption {c.Description}"); Console.WriteLine("Resourses as following : "); foreach (var r in c.Resources) { Console.WriteLine($"Name : {r.Name}"); Console.WriteLine($"ResourseType : {r.Resourse}"); Console.WriteLine($"Url : {r.Url}"); } } }
//02 Resource Licenses private static void ListStudentCoursesResoursesLicense(StudentSystemDbContext db) { var students = db.Students.Select(s => new { s.Name, CoursesCount = s.Courses.Count, Resourses = s.Courses.Select(r => new { ResCount = r.Course.Resources.Count, ResLicense = r.Course.Resources.Select(rs => new { LicenseCount = rs.Licenses.Count }) }).OrderByDescending(c => c.ResCount) }).OrderByDescending(c => c.CoursesCount).ThenBy(c => c.Name).ToArray(); foreach (var s in students) { Console.WriteLine($"Name {s.Name} Courses Number {s.CoursesCount}"); foreach (var r in s.Resourses) { Console.WriteLine($" Resourses Count : {r.ResCount}"); Console.WriteLine($" License Count : {r.ResLicense.Sum(c => c.LicenseCount)}"); } } }
public ICollection<Homework> Get() { var db = new StudentSystemDbContext(); var homeworksRepo = new GenericRepository<Homework>(db); List<Homework> homeworks = homeworksRepo.All().ToList(); return homeworks; }
private static void PrintStudentsWithHomeworks(StudentSystemDbContext context) { var students = context .Students .Select(x => new { Name = x.Name, Homeworks = x.Homeworks.Select(h => new { Content = h.Content, ContentType = h.ContentType }) }) .OrderBy(x => x.Name) .ToArray(); foreach (var student in students) { Console.WriteLine(student.Name); foreach (var homework in student.Homeworks) { Console.WriteLine($" --Content: {homework.Content}, ContentType: {homework.ContentType}"); } } }
private static void PrintAllCoursesWithResources(StudentSystemDbContext context) { var courses = context .Courses .Select(x => new { Name = x.Name, Description = x.Description, Resources = x.Resources, StartDate = x.StartDate, EndDate = x.EndDate }) .OrderBy(x => x.StartDate) .ThenBy(x => x.EndDate) .ToArray(); foreach (var course in courses) { Console.WriteLine($"{course.Name}"); Console.WriteLine($" Description: {course.Description}"); Console.WriteLine($" Resources:"); foreach (var resource in course.Resources) { Console.WriteLine($" --{resource.Name}"); Console.WriteLine($" --{resource.Url}"); Console.WriteLine($" --{resource.ResourceType}"); } } }
private static void PrintCoursesActiveOnDate(StudentSystemDbContext context) { DateTime TargetDate = DateTime.Now.AddDays(2); var courses = context .Courses .Where(x => x.StartDate.Day == TargetDate.Day) .Select(x => new { Name = x.Name, StartDate = x.StartDate, EndDate = x.EndDate, EnrollStudents = x.Students.Count, Duration = (int)(x.EndDate.Subtract(x.StartDate).TotalDays) }) .OrderByDescending(x => x.EnrollStudents) .ThenByDescending(x => x.Duration) .ToArray(); foreach (var course in courses) { Console.WriteLine($"{course.Name}"); Console.WriteLine($" --StartDate: {course.StartDate}"); Console.WriteLine($" --EndDate: {course.EndDate}"); Console.WriteLine($" --Duration: {course.Duration} days"); Console.WriteLine($" --Enrolled students: {course.EnrollStudents}"); } }
//01 Resource Licenses private static void ListCoursesAndResourses(StudentSystemDbContext db) { var courses = db.Courses.Select(c => new { c.Name, ResourcessInfo = c.Resources.Select(e => new { e.Name, LicenseNames = e.Licenses.Select(l => new { l.Name }), LicenseCount = e.Licenses.Count }).OrderByDescending(s => s.LicenseCount).ThenBy(s => s.Name), ResoursesCount = c.Resources.Count }).OrderByDescending(c => c.ResoursesCount).ThenBy(c => c.Name).ToArray(); foreach (var c in courses) { Console.WriteLine($"Course Name {c.Name}"); foreach (var r in c.ResourcessInfo) { Console.WriteLine($" ResourseName {r.Name} "); foreach (var lm in r.LicenseNames) { Console.WriteLine($" LicenseName {lm.Name}"); } } } }
private static void RelateTables(StudentSystemDbContext db) { Student student = db.Students.Find(1); Course course = db.Courses.Find(2); Student student1 = db.Students.Find(3); Course course1 = db.Courses.Find(1); Student student2 = db.Students.Find(2); Course course2 = db.Courses.Find(3); course.Students.Add(new StudentCourses() { Student = student }); course1.Students.Add(new StudentCourses() { Student = student1 }); course2.Students.Add(new StudentCourses() { Student = student2 }); student.Courses.Add(new StudentCourses() { Course = course1 }); student2.Courses.Add(new StudentCourses() { Course = course }); db.SaveChanges(); }
public ICollection<Student> Get() { var db = new StudentSystemDbContext(); var studentsRepo = new GenericRepository<Student>(db); List<Student> students = studentsRepo.All().ToList(); return students; }
public static void Main() { var studentSystemDbContext = new StudentSystemDbContext(); bool input = false; if (input) { for (int i = 0; i < 10; i++) { Student student = SeedDAO.CreateStudent(); Course course = SeedDAO.CreateCourse(); Homework homework = SeedDAO.CreateHomework(); Resource resource = SeedDAO.CreateResourse(); studentSystemDbContext.Students.Add(student); studentSystemDbContext.Courses.Add(course); studentSystemDbContext.Homework.Add(homework); studentSystemDbContext.Resources.Add(resource); } var result = studentSystemDbContext.SaveChanges(); Console.WriteLine("Affected rows: {0}", result); } SeedDAO.DisplayStudents(studentSystemDbContext); SeedDAO.DisplayCourses(studentSystemDbContext); }
private List <Course> SeedCourses(StudentSystemDbContext context) { Console.WriteLine("Seeding Courses..."); var addedCourses = new List <Course>(); var currentDate = DateTime.Now; for (int i = 0; i < TotalCourses; i++) { var course = new Course { Name = $"Course {i + 1}", Description = $"Course Details {i + 1}", StartDate = currentDate.AddDays(i), EndDate = currentDate.AddDays(random.Next(CourseDuration - 5, CourseDuration + 5)), Price = 100 + i * 10 }; context.Courses.Add(course); addedCourses.Add(course); } context.SaveChanges(); return(addedCourses); }
public static void Seed(StudentSystemDbContext data, int amount = 30) { var amountOfMaterials = RandomGenerator.GetNumber(2, 4); var materials = data.Materials.OrderBy(x => Guid.NewGuid()); var materialsCount = materials.Count(); Console.WriteLine("Importing courses..."); for (int i = 0; i < amount; i++) { var course = new Course { Description = RandomGenerator.GetString(10, 100), Name = RandomGenerator.GetString(5, 25), }; for (int j = 0; j < amountOfMaterials; j++) { var toSkip = RandomGenerator.GetNumber(0, materialsCount - 1); course.Materials.Add(materials.Skip(toSkip).Take(1).First()); } data.Courses.Add(course); } data.SaveChanges(); }
private static void Task24_PrintActiveCourses(StudentSystemDbContext db) { DateTime date = DateTime.Now.AddDays(30); var taskResult = db .Courses .Where(c => c.StartDate < date && date < c.EndDate) .Select(c => new { c.Name, c.StartDate, c.EndDate, Duration = c.EndDate.Subtract(c.StartDate), Students = c.Students.Count }) .OrderByDescending(c => c.Students) .ThenByDescending(c => c.Duration) .ToList(); foreach (var course in taskResult) { Console.WriteLine($"{course.Name}: {course.StartDate.ToShortDateString()} .. {course.EndDate.ToShortDateString()}"); Console.WriteLine($" Duration : {course.Duration.Days} days"); Console.WriteLine($" Number of Students: {course.Students}"); Console.WriteLine(new string('-', 10)); } }
public IEnumerable <StudentServiceModel> GetStudents() { IEnumerable <StudentServiceModel> students; using (var data = new StudentSystemDbContext()) { students = data.Students .Select(x => new StudentServiceModel() { FirstName = x.User.FirstName, MiddleName = x.User.MiddleName, LastName = x.User.LastName, StudentId = x.StudentId, Department = x.User.Department.Name, AverageMark = x.CoursesEnrolled.Average(m => m.Mark), Town = x.User.Town.Name }) .OrderByDescending(X => X.AverageMark) .ToList(); } foreach (var student in students) { if (student.AverageMark != null) { student.AverageMark = Math.Round((double)student.AverageMark, 2); } } return(students); }
private void PrintStudentWithCoursesResoursesAndLicenses(StudentSystemDbContext context) { Console.WriteLine("Students with courses, resources & licenses:"); var studentData = context .Students .Where(s => s.Courses.Any()) .Select(s => new { s.Name, Courses = s.Courses.Count, Resources = s.Courses .Sum(sc => sc.Course.Resources.Count), Licenses = s.Courses .Sum(sc => sc.Course.Resources .Sum(r => r.Licenses.Count)) }) .OrderByDescending(s => s.Courses) .ThenByDescending(s => s.Resources) .ThenBy(s => s.Name) .ToList(); var builder = new StringBuilder(); foreach (var student in studentData) { builder.AppendLine($"{student.Name} - Courses {student.Courses} - Resources {student.Resources} - Licenses {student.Licenses} "); } Console.WriteLine(builder.ToString()); }
private void SeedResources(StudentSystemDbContext context, List <Course> addedCourses) { Console.WriteLine("Seeding Resources..."); var resourceTypes = Enum.GetValues(typeof(ResourceType)).Cast <int>().ToArray(); for (int i = 0; i < TotalCourses; i++) { var currentCourse = addedCourses[i]; var resourcesInCourse = random.Next(2, 20); for (int j = 0; j < resourcesInCourse; j++) { context.Resources.Add(new Resource { Name = $"Resource {currentCourse.Id}/{j + 1}", URL = $"www.softuni.bg/course{currentCourse.Id}/resource{j + 1}", ResourceType = (ResourceType)resourceTypes[random.Next(0, resourceTypes.Length)], Course = currentCourse }); } } context.SaveChanges(); }
private void SeedStudentsToCourses(StudentSystemDbContext context, List <Course> addedCourses) { Console.WriteLine("Seeding Students to Courses..."); var studentIds = context.Students.Select(s => s.Id).ToList(); for (int i = 0; i < TotalCourses; i++) { var currentCourse = addedCourses[i]; var studentsInCourse = random.Next(10, TotalStudents); for (int j = 0; j < studentsInCourse; j++) { var studentId = studentIds[random.Next(0, studentIds.Count)]; if (!currentCourse.Students.Any(s => s.StudentId == studentId)) { currentCourse.Students.Add(new StudentCourse { StudentId = studentId }); } } } context.SaveChanges(); }
private void SeedLicenses(StudentSystemDbContext context) { Console.WriteLine("Seeding Licenses..."); var resourceIds = context .Resources .Select(r => r.Id) .ToList(); for (int i = 0; i < resourceIds.Count; i++) { var totalLicenses = random.Next(1, 4); for (int j = 0; j < totalLicenses; j++) { context.Licenses.Add(new License { Name = $"License {resourceIds[i]}/{j + 1}", ResourceId = resourceIds[i] }); } context.SaveChanges(); } }
private void SeedHomeworks(StudentSystemDbContext context, List <Course> addedCourses) { Console.WriteLine("Seeding Homeworks..."); var contentTypes = Enum.GetValues(typeof(ContentType)).Cast <int>().ToArray(); var currentDate = DateTime.Now; for (int i = 0; i < TotalCourses; i++) { var currentCourse = addedCourses[i]; var studentsInCourse = currentCourse .Students .Select(s => s.StudentId) .ToList(); foreach (var studentId in studentsInCourse) { var totalHomeworks = random.Next(0, 5); for (int j = 0; j < totalHomeworks; j++) { currentCourse.HomeworkSubmissions.Add(new Homework { StudentId = studentId, Content = $"Homework {currentCourse.Id}/{studentId}/{j + 1}", ContentType = (ContentType)contentTypes[random.Next(0, contentTypes.Length)], SubmissionDate = currentDate.AddDays(-studentId / 10) }); } } } context.SaveChanges(); }
private void PrintCoursesWithResources(StudentSystemDbContext context) { Console.WriteLine("Courses with resources:"); var coursesData = context .Courses .OrderBy(c => c.StartDate) .ThenByDescending(c => c.EndDate) .Select(c => new { c.Name, c.Description, Resources = c.Resources.Select(r => new { r.Name, r.ResourceType, r.URL }) }) .ToList(); var builder = new StringBuilder(); foreach (var course in coursesData) { builder.AppendLine($"{course.Name} - {course.Description}:"); foreach (var resource in course.Resources) { builder.AppendLine($" {resource.Name} - {resource.ResourceType} - {resource.URL}"); } } Console.WriteLine(builder.ToString()); }
private void PrintStudentsWithHomeworkSubmissions(StudentSystemDbContext context) { Console.WriteLine("Students with homeworks:"); var studentsData = context .Students .Select(s => new { s.Name, Homeworks = s.Homeworks.Select(h => new { h.Content, h.ContentType }) }) .ToList(); var builder = new StringBuilder(); foreach (var student in studentsData) { builder.AppendLine($"{student.Name}:"); foreach (var homework in student.Homeworks) { builder.AppendLine($" {homework.Content} - {homework.ContentType}"); } } Console.WriteLine(builder.ToString()); }
private void PrintStudentCoursesAndPrice(StudentSystemDbContext context) { Console.WriteLine("Students Course prices:"); var studentCourses = context .Students .Where(s => s.Courses.Any()) .Select(s => new { s.Name, Courses = s.Courses.Count, TotalPrice = s.Courses.Sum(sc => sc.Course.Price), AveragePrice = s.Courses.Average(sc => sc.Course.Price) }) .OrderByDescending(s => s.TotalPrice) .ThenByDescending(s => s.Courses) .ThenBy(s => s.Name) .ToList(); var builder = new StringBuilder(); foreach (var student in studentCourses) { builder .Append($"{student.Name} - Courses {student.Courses} - ") .Append($"Total Price {student.TotalPrice:f2} - ") .AppendLine($"Average Price {student.AveragePrice:f2}"); } Console.WriteLine(builder.ToString()); }
private void PrintCoursesWithMoreThan5Resources(StudentSystemDbContext context) { Console.WriteLine("Courses with more than 5 resources:"); var coursesData = context .Courses .Where(c => c.Resources.Count > 5) .OrderByDescending(c => c.Resources.Count) .ThenByDescending(c => c.StartDate) .Select(c => new { c.Name, Resources = c.Resources.Count }) .ToList(); var builder = new StringBuilder(); foreach (var course in coursesData) { builder.AppendLine($" {course.Name} - Resources {course.Resources}"); } Console.WriteLine(builder.ToString()); }
private static void PrintCourseActionOnDate(StudentSystemDbContext db) { var date = DateTime.Now.AddDays(25); var result = db .Courses .Where(c => c.Startdate <date && date> c.EndDate) .Select(c => new { c.Name, c.Startdate, c.EndDate, Duration = c.EndDate.Subtract(c.Startdate), Studens = c.Students.Count }) .OrderByDescending(c => c.Studens) .ThenByDescending(c => c.Duration) .ToList(); foreach (var course in result) { Console.WriteLine($"{course.Name}- {course.Startdate.ToShortDateString()}- { course.EndDate.ToShortDateString()}"); Console.WriteLine($"--------Duration:{course.Duration.TotalDays}"); Console.WriteLine($"---Students: {course.Studens}"); Console.WriteLine("---------------"); } }
private static void PrintCoursesAndResourses(StudentSystemDbContext db) { var result = db .Courses .OrderBy(c => c.Startdate) .ThenBy(c => c.EndDate) .Select(c => new { c.Name, c.Description, Resourse = c.Resourses.Select(r => new { r.Name, r.Url, r.Type }) }) .ToList(); foreach (var course in result) { Console.WriteLine($"{course.Name}- {course.Description}"); foreach (var resourse in course.Resourse) { Console.WriteLine($"{resourse.Name}-{resourse.Type}- {resourse.Url}"); } } }
public static void Seed(StudentSystemDbContext data, int amount = 50) { var courses = data.Courses.OrderBy(x => Guid.NewGuid()); var coursesCount = courses.Count(); Console.WriteLine("Importing students..."); for (int i = 0; i < amount; i++) { var student = new Student { Name = RandomGenerator.GetString(2, 50), Number = RandomGenerator.GetNumber(1, 50) }; var coursesPerStudent = RandomGenerator.GetNumber(2, 4); for (int j = 0; j < coursesPerStudent; j++) { var toSkip = RandomGenerator.GetNumber(0, coursesCount - 1); student.Courses.Add(courses.Skip(toSkip).Take(1).First()); } data.Students.Add(student); } data.SaveChanges(); }
public static void Main() { var db = new StudentSystemDbContext(); db.Database.Initialize(true); PrintStudents(db); PrintCourses(db); PrintHomeworks(db); }
private static void PrintStudents(StudentSystemDbContext db) { Console.WriteLine("Students: "); foreach (var student in db.Students.Include("Courses")) { Console.WriteLine(" - {0} -> present in {1} course(s)", student.FullName, student.Courses.Count()); } }
private static void PrintCourses(StudentSystemDbContext db) { Console.WriteLine("\nCourses: "); foreach (var course in db.Courses.Include("Homeworks")) { Console.WriteLine(" - {0} -> has {1} homework(s)", course.Name, course.Homeworks.Count()); } }
private static void PrintHomeworks(StudentSystemDbContext db) { Console.WriteLine("\nHomeworks: "); var homeworkCompleted = db.Homeworks.Where(h => h.StudentId.HasValue).FirstOrDefault(); Console.WriteLine( " - {0} ({1}) -> Completed by: {2}", homeworkCompleted.Content, homeworkCompleted.Course.Description, homeworkCompleted.Student.FullName); }
static void Main(string[] args) { Database.SetInitializer(new MigrateDatabaseToLatestVersion<StudentSystemDbContext, Configuration>()); var db = new StudentSystemDbContext(); var student = new Student { FirstName = "John", LastName = "3volta", FacultyNumber = "qwerty" }; System.Console.WriteLine(db.Students.ToList().Count()); db.Students.Add(student); db.SaveChanges(); }
public IHttpActionResult Post(CourseRequestModel model) { if (model == null) { return this.BadRequest(); } var db = new StudentSystemDbContext(); var coursesRepo = new GenericRepository<Course>(db); var courseToAdd = new Course { Name = model.Name, Description = model.Description }; coursesRepo.Add(courseToAdd); coursesRepo.SaveChanges(); return this.Ok(); }
public IHttpActionResult Post(StudentRequestModel model) { if (model == null) { return this.BadRequest(); } var db = new StudentSystemDbContext(); var studentsRepo = new GenericRepository<Student>(db); var studentToAdd = new Student { FirstName = model.FirstName, LastName = model.LastName, Level = model.Level }; studentsRepo.Add(studentToAdd); studentsRepo.SaveChanges(); return this.Ok(); }
static void Main() { Database.SetInitializer( new MigrateDatabaseToLatestVersion<StudentSystemDbContext, Configuration>()); using (var db = new StudentSystemDbContext()) { var student = new Student { FirstName = "Sam", LastName = "Jones", Number = 5203 }; var course = new Course { Name = "Math", Description = "Stereometrics", Materials = "http://math.com" }; var homework = new Homework { Content = "Done", TimeSent = new DateTime(2015, 8, 15) }; db.Homeworks.Add(homework); student.Courses.Add(course); db.Students.Add(student); db.Courses.Add(course); db.SaveChanges(); Console.WriteLine(db.Students.Count()); Console.WriteLine(db.Courses.Count()); } }
public HomeworksController() { var dbContext = new StudentSystemDbContext(); this.courses = new EfRepository<Course>(dbContext); this.homeworks = new EfRepository<Homework>(dbContext); }
static void Main() { Database.SetInitializer(new MigrateDatabaseToLatestVersion<StudentSystemDbContext, Configuration>()); var db = new StudentSystemDbContext(); //Add new student db.Students.AddOrUpdate(new Student { Name = "Nakov", Birthday = new DateTime(1980, 1, 1), RegistrationDate = new DateTime(2015, 2, 1) }); // Add new resource var resource1 = new Resource { Name = "Nakov video", TypeOfResourse = TypeOfResourse.Video, Link = "www.youtube.com" }; var resource2 = new Resource { Name = "Link", Link = "www.dir.bg", TypeOfResourse = TypeOfResourse.Other, }; db.Resources.AddOrUpdate(resource1, resource2); // Add new courses var course1 = new Course { Name = "C# Intro", Discription = "jgds gldsldjf dgj dgf g ", StartDate = new DateTime(2014, 1, 1), EndDate = new DateTime(2014, 1, 30), Price = 180 }; var course2 = new Course { Name = "Seminar 1", Discription = "jgds gldsldjf dgj dgf g ", StartDate = new DateTime(2015, 2, 1), EndDate = new DateTime(2015, 2, 25), Price = 0 }; course1.Resources.Add(resource1); course2.Resources.Add(resource2); db.Courses.AddOrUpdate(course1, course2); db.SaveChanges(); // Lists all students and their homework submissions Console.WriteLine(" * Lists all students and their homework submissions"); var students = db.Students .Include(s => s.Homeworks) .Select(s => new { s.Name, s.Homeworks }); foreach (var student in students) { Console.WriteLine(student.Name); var homeworks = student.Homeworks; if (homeworks.Count == 0) { Console.WriteLine(" no homeworks"); } else { foreach (var homework in homeworks) { Console.WriteLine(" - " + homework.DateAndTime); } } } Console.WriteLine(); // List all course and their resources Console.WriteLine(" * List all course and their resources"); var courses = db.Courses .Include(c => c.Resources) .Select(c => new { c.Name, c.Resources }); foreach (var course in courses) { Console.WriteLine(course.Name); var resourses = course.Resources; if (resourses.Count == 0) { Console.WriteLine(" no resourses"); } else { foreach (var resourse in resourses) { Console.WriteLine(" {0}; {1}",resourse.Name, resourse.Link); } } } }
public static void Main() { var db = new StudentSystemDbContext(); }
public StudentsController() { var dbContext = new StudentSystemDbContext(); this.studentData = new GenericRepository<Student>(dbContext); }
public static void Main(string[] args) { Database.SetInitializer(new StudentSystemDbInitializer()); using (var context = new StudentSystemDbContext()) { Console.WriteLine("Task 3.1: List all students and their homework submissions:"); var students = context.Students.Include("Homeworks"); foreach (var student in students) { Console.WriteLine("Student: {0} ; Submitted homeworks count: {1}", student.Name, student.Homeworks.Count()); } Console.WriteLine("\nTask 3.2: List all courses and their resources:"); var courses = context.Courses.Include("Resources"); foreach (var course in courses) { Console.WriteLine("Course: \"{0}\" with following resources:", course.Name); foreach (var resource in course.Resources) { Console.WriteLine("\t- \"{0}\" - [Type: {1}]", resource.Name, resource.Type); } } Console.WriteLine("\nTask 3.3: Adds a new course with some resources:"); var newCourse = new Course { Name = "C# Programming - Beginning", Description = "Learn to code in C#", StartDate = DateTime.Now, Price = 0.01m, Resources = new List<Resource> { new Resource { Name = "C# Programming", Type = ResourceType.Document, Link = "search in bookstores" }, new Resource { Name = "Head First C#", Type = ResourceType.Document, Link = "http://it-ebooks.info/book/251/" }, } }; context.Courses.Add(newCourse); context.SaveChanges(); Console.WriteLine("Added course ID in DB is: {0}", newCourse.CourseId); Console.WriteLine("This new course have {0} resources", newCourse.Resources.Count()); Console.WriteLine("\nTask 3.4: Add a new student:"); var newStudent = new Student { Name = "Svetlin Nakov", Birthday = new DateTime(1900, 1, 1), RegistrationDate = DateTime.Now }; context.Students.Add(newStudent); context.SaveChanges(); Console.WriteLine("Added student ID in DB is: {0}", newStudent.StudentId); Console.WriteLine("\nTask 3.5: Add a new resource:"); var newResource = new Resource { Name = "Book with pictures", Type = ResourceType.Document, Link = "look into kindergarden", Course = context.Courses.FirstOrDefault(), }; context.Resources.Add(newResource); context.SaveChanges(); Console.WriteLine("Added resource ID in DB is {0} and is assigned to course \"{1}\"", newResource.ResourceId, newResource.Course.Name); } }