NuSurvey.Web.Controllers.SurveyResponseDetailViewModel.Create C# (CSharp) Method

Create() public static method

public static Create ( IRepository repository, Survey survey, System.DateTime beginDate, System.DateTime endDate ) : SurveyResponseDetailViewModel
repository IRepository
survey Survey
beginDate System.DateTime
endDate System.DateTime
return SurveyResponseDetailViewModel
        public static SurveyResponseDetailViewModel Create(IRepository repository, Survey survey, DateTime? beginDate, DateTime? endDate)
        {
            Check.Require(repository != null, "Repository must be supplied");
            Check.Require(survey != null, "Survey must be supplied");

            var viewModel = new SurveyResponseDetailViewModel { Survey = survey, FilterBeginDate = beginDate, FilterEndDate = endDate};
            viewModel.SurveyResponses = viewModel.Survey.SurveyResponses.AsQueryable().Where(a => !a.IsPending);
            viewModel.HasPendingResponses = viewModel.Survey.SurveyResponses.Where(a => a.IsPending).Any();
            if (beginDate != null)
            {
                beginDate = beginDate.Value.Date;
                viewModel.SurveyResponses = viewModel.SurveyResponses.Where(a => a.DateTaken >= beginDate);
            }
            if (endDate != null)
            {
                endDate = endDate.Value.Date.AddDays(1).AddMinutes(-1);
                viewModel.SurveyResponses = viewModel.SurveyResponses.Where(a => a.DateTaken <= endDate);
            }

            return viewModel;
        }
SurveyResponseDetailViewModel