Пример #1
0
 public List<StatModel> GetTestStats(Guid id)
 {
     using (var DB = new MainContext())
     {
         return DB.Stats.Where(x => x.TestModel.Id == id).ToList();
     }
 }
Пример #2
0
 public ProfessorModel GetProfessorById(Guid guid)
 {
     using (var DB = new MainContext())
     {
         return DB.Professors.Where(x => x.Id == guid).FirstOrDefault();
     }
 }
Пример #3
0
 public SpaceModel GetSpaceById(Guid guid)
 {
     using (var DB = new MainContext())
     {
         return DB.Spaces.Where(x => x.Id == guid).FirstOrDefault();
     }
 }
Пример #4
0
 public List<QuestionModel> GetTestQuestions(Guid testGuid)
 {
     using (var DB = new MainContext())
     {
         return DB.Tests.Where(x => x.Id == testGuid).FirstOrDefault().Questions.ToList();
     }
 }
Пример #5
0
 public InfoModel GetInfoCreatedForTest(Guid testId)
 {
     using (var DB = new MainContext())
     {
         return DB.Infos.Where(x => x.Tests.FirstOrDefault().Id == testId).FirstOrDefault();
     }
 }
Пример #6
0
 public InfoModel GetInfoById(Guid guid)
 {
     using (var DB = new MainContext())
     {
         return DB.Infos.Where(x => x.Id == guid).FirstOrDefault();
     }
 }
Пример #7
0
 public AnswerModel GetAnswer(Guid guid)
 {
     using (var DB = new MainContext())
     {
         return DB.Answers.Where(x => x.Id == guid).FirstOrDefault();
     }
 }
Пример #8
0
 public List<InfoModel> GetInfos()
 {
     using (var DB = new MainContext())
     {
         return DB.Infos.ToList();
     }
 }
Пример #9
0
 public List<SubjectModel> GetSubjects()
 {
     using (var DB = new MainContext())
     {
         return DB.Subjects.ToList();
     }
 }
Пример #10
0
 public SubjectModel GetSubjectById(Guid guid)
 {
     using (var DB = new MainContext())
     {
         return DB.Subjects.Where(x => x.Id == guid).FirstOrDefault();
     }
 }
Пример #11
0
 public List<ProfessorModel> GetProfessors()
 {
     using (var DB = new MainContext())
     {
         return DB.Professors.ToList();
     }
 }
Пример #12
0
 public List<SpaceModel> GetSpaces()
 {
     using (var DB = new MainContext())
     {
         return DB.Spaces.ToList();
     }
 }
Пример #13
0
 public void Delete(Guid id)
 {
     using (var DB = new MainContext())
     {
         DB.Entry(GetProfessorById(id)).State = System.Data.Entity.EntityState.Deleted;
         DB.SaveChanges();
     }
 }
Пример #14
0
 public bool Add(SpaceModel data)
 {
     using (var DB = new MainContext())
     {
         DB.Spaces.Add(data);
         DB.SaveChanges();
         return true;
     }
     return false;
 }
Пример #15
0
 public bool Add(ProfessorModel data)
 {
     using (var DB = new MainContext())
     {
         DB.Professors.Add(data);
         DB.SaveChanges();
         return true;
     }
     return false;
 }
Пример #16
0
 public bool Add(SubjectModel model)
 {
     using (var DB = new MainContext())
     {
         DB.Subjects.Add(model);
         DB.Entry(model.Space).State = System.Data.Entity.EntityState.Unchanged;
         DB.SaveChanges();
         return true;
     }
     return false;
 }
Пример #17
0
 public bool Edit(ProfessorModel data)
 {
     using (var DB = new MainContext())
     {
         DB.Professors.Attach(data);
         DB.Entry(data).State = System.Data.Entity.EntityState.Modified;
         DB.SaveChanges();
         return true;
     }
     return false;
 }
Пример #18
0
 private static bool CheckQuestion(QuestionModel question)
 {
     using (var DB = new MainContext())
     {
         foreach(var ans in question.Answers)
         {
             if (DB.Answers.Where(x => x.Id == ans.Id).FirstOrDefault().isRight != ans.isRight)
                 return false;
         }
     }
     return true;
 }
Пример #19
0
 public bool ChangeRating(Guid TestId, int Rating)
 {
     using (var DB = new MainContext())
     {
         var test = DB.Tests.Where(x => x.Id == TestId).FirstOrDefault();
         test.Rating += Rating;
         DB.Entry(test).State = System.Data.Entity.EntityState.Modified;
         DB.SaveChanges();
         return true;
     }
     return false;
 }
Пример #20
0
 public List<SubjectModel> GetSpaceSubjects(Guid id)
 {
     using (var DB = new MainContext())
     {
         return DB.Spaces.Where(x => x.Id == id).FirstOrDefault().Subjects.Select(x => new SubjectModel()
         {
             Id = x.Id,
             Name = x.Name,
             Shortcut = x.Shortcut
         }).ToList();
     }
 }
Пример #21
0
 public bool Add(StatModel model)
 {
     using (var DB = new MainContext())
     {
         model.TestModel.Questions = null;
         DB.Stats.Add(model);
         DB.Entry(model.TestModel).State = System.Data.Entity.EntityState.Unchanged;
         DB.SaveChanges();
         return true;
     }
     return false;
 }
Пример #22
0
 /// <summary>
 /// todo: implement algorythm
 /// </summary>
 /// <returns></returns>
 public List<TestInfoModel> GetRecommendedTests()
 {
     using (var DB = new MainContext())
     {
         return DB.Tests.OrderBy(r => Guid.NewGuid()).Take(3)
             .Select(t => new TestInfoModel()
             {
                 Shortcut = t.Shortcut,
                 Space = t.Space.Name,
                 Description = t.Description,
                 Rating = t.Rating,
                 Creator = t.Creator.UserName
             }).ToList();
     }
 }
Пример #23
0
        public List<SpaceInfoModel> GetSpacesForAutocomplete(string space, string test)
        {
            using (var DB = new MainContext())
            {

                var list = DB.Spaces.AsEnumerable().Select(x => new SpaceInfoModel()
                {
                    Id = x.Id,
                    Name = x.Name,
                    Space = x.Shortcut,
                    Shortcut = x.Shortcut,
                }).ToList();
                var spaces = list.Where(x => AutocompleteAlgorithms.Matches(x, space, test)).ToList();
                return spaces;
            }
        }
Пример #24
0
        public bool Add(TestModel model)
        {
            model.Creator = new UserProfile()
            {
                UserId = WebMatrix.WebData.WebSecurity.CurrentUserId,
                UserName = WebMatrix.WebData.WebSecurity.CurrentUserName
            };
            using (var DB = new MainContext())
            {
                var context = new ValidationContext(model.Infos.First(), serviceProvider: null, items: null);
                var validationResults = new List<ValidationResult>();

                bool isValid = Validator.TryValidateObject(model.Infos.First(), context, validationResults, true);
                if (isValid)
                {
                    DB.Infos.Add(model.Infos.First());
                    DB.SaveChanges();
                }
                else
                    model.Infos.Remove(model.Infos.First());

                DB.Tests.Add(model);
                DB.Entry(model.Space).State = System.Data.Entity.EntityState.Unchanged;
                DB.Entry(model.Subject).State = System.Data.Entity.EntityState.Unchanged;
                DB.Entry(model.Creator).State = System.Data.Entity.EntityState.Unchanged;

                if (model.Infos != null)
                {
                    foreach (var infoModel in model.Infos)
                    {
                        DB.Entry(infoModel).State = System.Data.Entity.EntityState.Unchanged;
                    }
                }
                DB.SaveChanges();
                return true;
            }
            return false;
        }
Пример #25
0
 public TestModel GetTestByShortcut(string @short)
 {
     using (var DB = new MainContext())
     {
         return DB.Tests.Where(x => string.Compare(x.Shortcut, @short, true) == 0).FirstOrDefault();
     }
 }
Пример #26
0
        public List<TestInfoModel> GetTestsForAutocomplete(string space, string test)
        {
            using (var DB = new MainContext())
            {

                var list = DB.Tests.AsEnumerable().Select(x => new TestInfoModel()
                {
                    Id = x.Id,
                    Name = x.Name,
                    Space = (x.Space != null) ? (x.Space.Shortcut) : (""),
                    Rating = x.Rating,
                    Shortcut = x.Shortcut,
                    Creator = x.Creator.UserName
                }).ToList();
                var tests = list.Where(x => AutocompleteAlgorithms.Matches(x, space, test)).ToList();
                return tests;
            }
        }
Пример #27
0
 public TestModel GetTest(Guid guid)
 {
     using (var DB = new MainContext())
     {
         return DB.Tests.Where(x => x.Id == guid).FirstOrDefault();
     }
 }
Пример #28
0
 public ViewResult Pass(Guid Id)
 {
     var DB = new MainContext();
     return View(DB.Tests.Where(x => x.Id == Id).FirstOrDefault());
 }
Пример #29
0
 //
 // GET: /Space/
 public ViewResult Index(Guid Id)
 {
     var DB = new MainContext();
     return View(DB.Spaces.Where(x => x.Id == Id).FirstOrDefault());
 }