Je travaille dans un système C# où j'ai besoin de modéliser une relation many-to-many, où je veux construire les modèles à la main (c'est-à-dire que je ne veux pas utiliser de frameworks).
Je vais vous présenter un exemple simplifié du système, puis vous expliquer le problème : J'ai une bibliothèque qui contient Livre et Auteur s chaque Livre peut avoir de nombreux Auteur et il en va de même pour les Auteur .
public class Book{
public string Title;
public List<Author> Authors;
}
public class Author{
public string Name;
public List<Book> Books;
}
Maintenant, si je veux SÉLECTIONNER livres avec tous ses auteurs ; j'écrirais une fonction dans la Livre quelque chose comme ça :
public List<Book> All(){
List<Book> Books = new List<Book>();
Books = //Query that brings all books and its Authors and populate them into the Books list.
}
Maintenant, je devrais être capable de faire quelque chose comme ça :
Book boo = new Book();
List<Book> books = boo.All();
Console.WriteLine(books[0].Authors[0].Name);
Mais ce que je ne peux pas faire, c'est :
Console.WriteLine(books[0].Authors[0].Books[0].Title);
Parce que dans ce flux books[0].Authors[0].Books[0]
sera nulle (ou la valeur par défaut). Je ne vais donc pas faire quelque chose de semi-dynamique et garder à l'esprit les performances du serveur de base de données et du serveur client. la perspective du serveur de base de données et du serveur client.
J'espère avoir été assez clair. Merci pour votre temps.