Como hacer arboles en c# con bacse de datos

27/06/2006 - 02:11 por Franklin | Informe spam
Hola alguien me puede ayudar como puedo hacer arboles con base de datos o me
pueden ayudar con un ejemplo para revisar o alguna pagina para revisar
gracias por su atencion
Ayuda
 

Leer las respuestas

#1 vbuciov
08/10/2013 - 19:32 | Informe spam
Franklin escribió el 27/06/2006 02:11 :
Hola alguien me puede ayudar como puedo hacer arboles con base de datos o me
pueden ayudar con un ejemplo para revisar o alguna pagina para revisar
gracias por su atencion
Ayuda


Esto lo logras sencillamente agregando la FK (Foreing Key) hacia si misma (Relación recursiva) con la posibilidad de ser NULL.

Lo que te puedo decir es que recuperar información es un tema muy extenso cuando utilizas este tipo de estructuras de datos, existen varias estrategias y cada una va enfocada a un tipo de resultado.

1.- Utilizar procedimientos, tablas temporales, y funciones con valor de retorno de tabla. Compensa la imposibilidad de crear vistas pues se suele requerir iterar un par de veces sobre registros para arrojar la información buscada.
2.- CTE (Common Table Expression ). Cuando requieras calcular el nivel de profundidad de tu estructura, si es que no la tenías calculada previamente.
3.- Derived Tables . Cuándo es muy estricta la cantidad de niveles.

Nota: Todas estas soluciones te darás cuenta que se implementan en el DBMS, procura evitar las recursividad en procedimientos y funciones o al menos evitar que esta sea muy extensa debido a que los servidores suelen tener un límite en la recursividad permitida.

Por último el presentar los datos al usuario se puede hacer de la siguiente manera:
1.- Utilizando un componente de árbol
1.1.- Cargado completo. Todo el árbol se construye en una sola lectura, pero optimizar el rendimiento depende de tu habilidad matemática para manejar este tipo de estructuras.
1.2.- Cargado flojo. Conforme se pulsa un nodo se va consultando información.
2.- Utilizando DropDowns ó ComboBoxes. Es una lista precargada en la que solo se presentan hojas, y el texto de las mismas tiene una estructura regresiva "Nivel N, ... Nivel 1, Nivel 0".

Preguntas similares