public ActionResult StartTest(int testId, int questionId = 1) { var config = new MapperConfiguration(cfg => cfg.CreateMap <DataAcess.DomainModels.Question, QuestionViewModel>()); var mapper = config.CreateMapper(); var question = mapper.Map <DataAcess.DomainModels.Question, QuestionViewModel>(DataAcess.TestManagment.GetQuestion(testId, questionId)); var pageInfo = new QuestionPageInfo { TestId = testId, QuestionId = questionId, TotalPages = DataAcess.TestManagment.GetQuestionList(testId).Count }; var stqvm = new StartTestQuestionViewModel { QuestionPageInfo = pageInfo, Question = question }; return(View(stqvm)); }
public static MvcHtmlString QuestionHelper(this HtmlHelper html, QuestionPageInfo pageInfo, Func <int, string> pageUrl) { StringBuilder result = new StringBuilder(); for (int i = 1; i <= pageInfo.TotalPages; i++) { TagBuilder tag = new TagBuilder("a"); tag.MergeAttribute("href", pageUrl(i)); tag.InnerHtml = i.ToString(); if (i == pageInfo.QuestionId) { tag.AddCssClass("selected"); tag.AddCssClass("btn-primary"); } tag.AddCssClass("btn btn-default"); result.Append(tag.ToString()); } return(MvcHtmlString.Create(result.ToString())); }