Пример #1
0
        public ActionResult Index(ForoIndexViewModel viewModel)
        {
            viewModel.categorias        = db.ForoCategorias.ToList();
            viewModel.categoriasLateral = db.ForoCategorias.ToList();

            var hilos = new List <ForoHilo>();

            if (ModelState.IsValid)
            {
                if (!string.IsNullOrEmpty(viewModel.TextoBusqueda))
                {
                    hilos = ForoHiloDataAccess.ObtenerForoHilo().Where(fh => fh.Titulo.ToUpper().Contains(viewModel.TextoBusqueda.ToUpper())).ToList();
                    var idsCategorias = hilos.Select(hil => hil.ForoCategoriaId).ToList();
                    viewModel.categorias = viewModel.categorias.Where(fc => idsCategorias.Contains(fc.ForoCategoriaId)).ToList();
                }
                else
                {
                    foreach (var categoria in viewModel.categorias)
                    {
                        hilos.AddRange(ForoHiloDataAccess.ObtenerForoHilo().Where(fh => fh.ForoCategoriaId == categoria.ForoCategoriaId).Take(3));
                    }
                }
            }
            else
            {
                foreach (var categoria in viewModel.categorias)
                {
                    hilos.AddRange(ForoHiloDataAccess.ObtenerForoHilo().Where(fh => fh.ForoCategoriaId == categoria.ForoCategoriaId).Take(3));
                }
            }

            viewModel.hilos = hilos;

            return(View(viewModel));
        }
Пример #2
0
        // GET: Alumno/Foro
        public ActionResult Index(int?categoriaId)
        {
            ForoIndexViewModel viewModel = new ForoIndexViewModel();
            var hilos = new List <ForoHilo>();

            viewModel.categoriasLateral = db.ForoCategorias.ToList();

            if (categoriaId.HasValue)
            {
                viewModel.categorias = db.ForoCategorias.Where(cat => cat.ForoCategoriaId == categoriaId.Value).ToList();

                hilos = ForoHiloDataAccess.ObtenerForoHilo().Where(fh => fh.ForoCategoriaId == categoriaId.Value).Take(10).ToList();
            }
            else
            {
                viewModel.categorias = db.ForoCategorias.ToList();
                foreach (var categoria in viewModel.categorias)
                {
                    hilos.AddRange(ForoHiloDataAccess.ObtenerForoHilo().Where(fh => fh.ForoCategoriaId == categoria.ForoCategoriaId).Take(3));
                }
            }


            viewModel.hilos = hilos;

            return(View(viewModel));
        }