Cómo modelar estructuras tales como árboles genealógicos en las bases de datos de documentos

StackOverflow https://stackoverflow.com/questions/3080846

  •  28-09-2019
  •  | 
  •  

Pregunta

He estado buscando en bases de datos de documentos, específicamente RavenDb, y todos los ejemplos son claros y comprensibles. No puedo encontrar ningún ejemplo en el que no saber de antemano cuántos niveles tiene una estructura dada. A modo de ejemplo ¿cómo persistir un árbol genealógico dado la siguiente clase:

public class Person{
     public string Name {get;set;} 

     public Person Parent {get;set;}
     public Person[] Children {get;set;}
}

En la mayoría de los ejemplos que he visto que la búsqueda de la raíz agregada y maquillaje en un documento. Simplemente no es tan obvio que aquí cuál es la raíz agregada y el límite es.

¿Fue útil?

Solución

supongo que para RavenDb, habría que mantener los identificadores en su objeto:

public class Person {
    public string Name { get; set; }
    public string ParentId { get; set; }
    public string[] ChildrenIds { get; set; }
}

Comprobar esta página, sobre todo en la parte inferior, para más información: http: // ravendb. / documentación / docs-net-documento de diseño

Otros consejos

Ayende acaba de publicar un entrada de blog que responde a esto.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top