コード例 #1
0
        public ActionResult InquireDailyQuestion(DailyQuestionQueryViewModel viewModel)
        {
            ViewBag.ViewModel = viewModel;

            var items = models.GetTable <PDQQuestion>().Where(g => g.GroupID == 6);

            IQueryable <PDQQuestionExtension> extensionItems = models.GetTable <PDQQuestionExtension>();

            if (viewModel.QuestionID.HasValue)
            {
                items = items.Where(q => q.QuestionID == viewModel.QuestionID);
            }

            if (viewModel.AskerID.HasValue)
            {
                items = items.Where(q => q.AskerID == viewModel.AskerID);
            }

            if (viewModel.Status.HasValue)
            {
                extensionItems = extensionItems.Where(t => t.Status == viewModel.Status);
            }

            viewModel.Keyword = viewModel.Keyword.GetEfficientString();
            if (viewModel.Keyword != null)
            {
                items = items.Where(q => q.Question.Contains(viewModel.Keyword));
            }

            items = items.Join(extensionItems, q => q.QuestionID, t => t.QuestionID, (q, t) => q);

            return(View("~/Views/Activity/Module/DailyQuestionList.ascx", items));
        }
コード例 #2
0
        public async Task <ActionResult> DailyQuestionIndexAsync(DailyQuestionQueryViewModel viewModel)
        {
            ViewBag.ViewModel = viewModel;
            var profile = await HttpContext.GetUserAsync();

            if (profile.IsCoach())
            {
                viewModel.AskerID = profile.UID;
            }
            return(View("~/Views/Activity/ListDailyQuestion.aspx"));
        }