コード例 #1
0
        //Igual que la anterior función pero mas resumida y hecha de otra forma sin un for each
        public Categoria DevolverTestsCategoria2(int idCategoria, out string msg)
        {
            CategoriasRow drCategoria = ds.Categorias.FindByIdCategoria(idCategoria);

            if (drCategoria == null)
            {
                msg = "No existe la categoría";
                return(null);
            }

            List <CategoriasTestsRow> drCategoriasTest = drCategoria.GetCategoriasTestsRows().ToList();

            if (drCategoriasTest.Count == 0)
            {
                msg = "Esta categoría no tiene tests";
                return(null);
            }

            var listTest = (from drcatTest in drCategoriasTest
                            select new Test(drcatTest.IdTest, drcatTest.TestRow.Descripcion, (from drPregunta in drcatTest.TestRow.GetPreguntasRows()
                                                                                              select new Pregunta(drPregunta.IdPregunta, drPregunta.Enunciado, drPregunta.RespV)).ToList())).ToList();


            Categoria nuevaCategoria = new Categoria(drCategoria.IdCategoria, drCategoria.Descripcion, listTest);

            msg = "";
            return(nuevaCategoria);
        }
コード例 #2
0
        public Categoria DevolverTestsCategoria(int idCategoria, out string msg)
        {
            CategoriasRow drCategoria = ds.Categorias.FindByIdCategoria(idCategoria);

            if (drCategoria == null)
            {
                msg = "No existe la categoría";
                return(null);
            }

            List <CategoriasTestsRow> drCategoriasTest = drCategoria.GetCategoriasTestsRows().ToList();

            var listTest = (from drcatTest in drCategoriasTest
                            select new Test(drcatTest.IdTest, drcatTest.TestRow.Descripcion)).ToList();

            if (listTest.Count == 0)
            {
                msg = "Esta categoría no tiene tests";
                return(null);
            }

            foreach (var test in listTest)
            {
                TestRow drTest = ds.Test.FindByIdTest(test.idTest);

                List <PreguntasRow> drPreguntas = drTest.GetPreguntasRows().ToList();

                List <Pregunta> listPreguntas = (from drPregunta in drPreguntas
                                                 select new Pregunta(drPregunta.IdPregunta, drPregunta.Enunciado, drPregunta.RespV)).ToList();
                if (listPreguntas.Count != 0)
                {
                    foreach (var pregunta in listPreguntas)
                    {
                        test.preguntasTest.Add(pregunta);
                    }
                }
            }

            Categoria nuevaCategoria = new Categoria(drCategoria.IdCategoria, drCategoria.Descripcion, listTest);

            msg = "";
            return(nuevaCategoria);
        }