Beispiel #1
0
        private static List <BAVMenuOpcion> recursivo(DataTable dt, string codigo)
        {
            List <BAVMenuOpcion> bAVMenuOpcions = new List <BAVMenuOpcion>();

            DataRow[] dataRowArray = dt.Select(string.Concat("MD_Cod_Padre=", codigo), "MD_Pos_Mostrar");
            for (int i = 0; i < (int)dataRowArray.Length; i++)
            {
                BAVMenuOpcion        newOpcion = BAVMenuOpcion.getNewOpcion(dataRowArray[i]);
                List <BAVMenuOpcion> opciones  = newOpcion.Opciones;
                int num = newOpcion.Codigo;
                opciones.AddRange(HelperMenu.recursivo(dt, num.ToString()));
                bAVMenuOpcions.Add(newOpcion);
            }
            return(bAVMenuOpcions);
        }
Beispiel #2
0
        public static List <BAVMenuOpcion> getMenuTest()
        {
            List <BAVMenuOpcion> bAVMenuOpcions = new List <BAVMenuOpcion>();
            DataSet dataSet = new DataSet();

            try
            {
                dataSet = HelperMenu.ws.MenuDinamicoNatural();
                if (dataSet.Tables.Count != 0)
                {
                    DataTable item = dataSet.Tables[0];
                    if (item.Rows.Count != 0)
                    {
                        if ((item.TableName == "SqlException" ? true : item.TableName == "Exception"))
                        {
                            throw new IBException(item.Rows[0]["NumeroError"].ToString().Trim(), "SQLIB");
                        }
                        DataRow[] dataRowArray  = dataSet.Tables[0].Select("MD_Cod_Padre = 0", "MD_Pos_Mostrar");
                        DataRow[] dataRowArray1 = dataRowArray;
                        for (int i = 0; i < (int)dataRowArray1.Length; i++)
                        {
                            BAVMenuOpcion        newOpcion = BAVMenuOpcion.getNewOpcion(dataRowArray1[i]);
                            List <BAVMenuOpcion> opciones  = newOpcion.Opciones;
                            DataTable            dataTable = dataSet.Tables[0];
                            int codigo = newOpcion.Codigo;
                            opciones.AddRange(HelperMenu.recursivo(dataTable, codigo.ToString()));
                            bAVMenuOpcions.Add(newOpcion);
                        }
                        dataSet = null;
                    }
                }
            }
            catch (WebException webException)
            {
                throw new IBException(webException.Message, "SQLIB");
            }
            return(bAVMenuOpcions);
        }