Το να γεμίσεις ένα 'κουβά' με λίστες, ilists, πινακες κλπ κλπ κλπ από αντικείμενα βάσει σχήματος βάσης δεν είναι το ζόρικο μέρος (αν και εφ'όσον δεν έχεις τα αντικείμενα διαθέσιμα, πρέπει να τα φτιάξεις, θέλει λίγη δουλίτσα).
Το ζόρικο μέρος είναι να διαθέσεις έναν τρόπο για να μιλάνε οι υπόλοιποι με τον κουβά.
Έχω υλοποιήσει κάτι παρεμφερές στην εργασία μου (ζήτω η LINQ!), και ένας τρόπος που μου άρεσε σαν υλοποίηση είναι ο εξής: static μέθοδοι μέσα στα instances των αντικειμένων. Προσφέρει ακόμα μεγαλύτερη ευελιξία.
Αν θες να κάνεις πχ update ένα αντικείμενο Customer θα μπορούσες να πεις
myCustomer.Update();
αλλά και με την static μέθοδο
Customer.Update(myCustomer);
Πέρα από αυτό, να ρωτήσω κάτι άλλο... μνήμη έχεις; αν πρόκειται για εμπορική εφαρμογή, εάν αρχίζεις και βάζεις μέσα κινήσεις μάλλον πάμε και για κάποιο μοντέλο διαχείρισης / optimization κατανάλωσης μνήμης.
Ωραίο αρθράκι Kelman.
"When the darkness rises up from inside - that is normal.
It's when you reach down to pull it up - that the noxious warnings sound."
Tuzak, Farscape