Пример #1
0
        public SubjectSearch()
        {
            InitializeComponent();
            var viewModel = new SubjectSearchModel();

            DataContext = viewModel;
        }
        public IQueryable <Subject> SubjetFiltering(SubjectSearchModel filterData)
        {
            IQueryable <Subject> result = subjectContext.Collection();

            if (filterData != null)
            {
                if (!string.IsNullOrEmpty(filterData.Category))
                {
                    result = result.Where(x => x.Category == filterData.Category);
                }
                if (!string.IsNullOrEmpty(filterData.Title))
                {
                    result = result.Where(x => x.Title.Contains(filterData.Title));
                }
                if (!string.IsNullOrEmpty(filterData.Genre))
                {
                    result = result.Where(x => x.Genre.Contains(filterData.Genre));
                }
                if (!string.IsNullOrEmpty(filterData.Publisher))
                {
                    result = result.Where(x => x.Publisher.Contains(filterData.Publisher));
                }
                if (filterData.IsBorrowed.HasValue)
                {
                    result = result.Where(x => x.IsBorrowed == filterData.IsBorrowed);
                }
            }

            return(result);
        }
        public Object RouteValuesSearches(SubjectSearchModel filterData)
        {
            var routeValues = new
            {
                filterData.Category,
                filterData.IsBorrowed,
                filterData.Title,
                filterData.Genre,
                filterData.Publisher
            };

            return(routeValues);
        }
Пример #4
0
        public ActionResult Index(SubjectSearchModel filterData)
        {
            SubjectSearchService searchService = new SubjectSearchService(subjectContext);


            TempData["FilterData"] = searchService.RouteValuesSearches(filterData);
            SubjectListViewModel viewModel = new SubjectListViewModel();

            viewModel.FilterData = filterData;
            viewModel.Subjects   = searchService.SubjetFiltering(filterData);
            viewModel.Categories = categoryContext.Collection().ToList();
            return(View(viewModel));
        }