public ActionResult PostQuestion(QuestionPostModel model) { if (Request.IsAuthenticated) { if (ModelState.IsValid) { try { var checkQuestionIsExist = _db.Questions.Any(m => m.Question.Equals(model.QuestionMessage)); if (!checkQuestionIsExist) { var u = _db.ForumUser.FirstOrDefault(m => m.UserName.Equals(User.Identity.Name)); if (u != null) { var userId = u.UserId; var userQuestions = new Questions { PostedDate = DateTime.Now, Question = model.QuestionMessage, CategoryId = Convert.ToInt32(model.Category), UserId = userId, answers = 0, views = 0 }; _db.Questions.Add(userQuestions); _db.SaveChanges(); var v = _db.PostInformation.SingleOrDefault(m => m.UserId.Equals(userId)); if (v != null) { var posId = v.PostId; var totalQuesPost = _db.PostInformation.Find(posId).TotalQuesPost; if (totalQuesPost != null) { var prevPosts = totalQuesPost.Value; var pi = _db.PostInformation.Find(posId); pi.TotalQuesPost = prevPosts + 1; _db.Entry(pi).State = EntityState.Modified; } } } _db.SaveChanges(); ViewData["unLUQC"] = 4; ViewData["QuestionLists"] = (from q in _db.Questions join us in _db.ForumUser on q.UserId equals us.UserId join c in _db.Category on q.CategoryId equals c.CategoryId orderby q.QuestionId descending select new QuestionList() { Question = q.Question, Image = us.Image, PostedBy = us.UserName, Posteddate = q.PostedDate, Category = c.CategoryName, Answers = q.answers, Views = q.views, Id = q.QuestionId }); var categories = _db.Category.Select(c => new { CategoryID = c.CategoryId, CategoryName = c.CategoryName }).OrderByDescending(m => m.CategoryID).ToList(); ViewBag.Categories = new MultiSelectList(categories, "CategoryID", ""); Response.Write("<div id='op'></div>"); } else { ModelState.AddModelError("","It seems that this question already exist."); } } catch (Exception e) { } } ViewData["QuestionLists"] = (_db.Questions.Join(_db.ForumUser, q => q.UserId, us => us.UserId, (q, us) => new {q, us}) .Join(_db.Category, @t => @t.q.CategoryId, c => c.CategoryId, (@t, c) => new QuestionList() { Question = @t.q.Question, Image = @t.us.Image, PostedBy = @t.us.UserName, Posteddate = @t.q.PostedDate, Category = c.CategoryName, Answers = @t.q.answers, Views = @t.q.views, Id = @t.q.QuestionId })).OrderByDescending(m => m.Id); var cates = _db.Category.Select(c => new { CategoryID = c.CategoryId, CategoryName = c.CategoryName }).ToList(); ViewBag.Categories = new SelectList(cates, "CategoryID", "CategoryName", Convert.ToInt32(model.Category).ToString()); } else { ViewBag.authErrorState = 402; TempData["UQC"] = 3; } return View(model); }
private void UpdateTotViews(int id) { int totAns = _db.Questions.SingleOrDefault(x => x.QuestionId.Equals(id)).views; question = _db.Questions.Single(m => m.QuestionId.Equals(id)); question.views = totAns + 1; _db.Entry(question).State = EntityState.Modified; _db.SaveChanges(); }
private void UpdateTotViews(int id) { var u = _db.Questions.SingleOrDefault(x => x.QuestionId.Equals(id)); if (u != null) { var totAns = u.views; _question = _db.Questions.Single(m => m.QuestionId.Equals(id)); _question.views = totAns + 1; } _db.Entry(_question).State = EntityState.Modified; _db.SaveChanges(); }
private void UpdateAns(int id) { Questions question = new Questions(); int totAns = _db.Questions.SingleOrDefault(x => x.QuestionId.Equals(id)).answers; question = _db.Questions.Single(m => m.QuestionId.Equals(id)); question.answers = totAns + 1; _db.Entry(question).State = EntityState.Modified; _db.SaveChanges(); }