J'ai essayé de développer une requête linq qui retourne la colonne ItemNumber de toutes mes tables dans la base de données, mais jusqu'à présent, je n'ai pas réussi à le faire avec succès.Linq to SQl, sélectionnez la même colonne de plusieurs tables
Fondamentalement, j'ai une table pour chaque type de composant matériel dans un ordinateur, et chaque table a une colonne ItemNumber. J'ai besoin d'interroger toutes les tables en un seul coup, et de retourner les valeurs ItemNumber dans une liste/tableau plat. (Essentiellement, je veux être en mesure de faire le ci-dessous)
foreach (var c in items) {
Console.WriteLine(c.ItemNumber);
}
Vous cherchez en vain, quelqu'un pourrait me montrer un exemple de la façon de le faire? Ma meilleure tentative est la suivante, mais je ne comprends pas assez Sql pour accomplir cela.
var items = from hc in dc.DataBoxPCHardwareCases
from hhd in dc.DataBoxPCHardwareHardDrives
from hkb in dc.DataBoxPCHardwareKeyboards
from hmm in dc.DataBoxPCHardwareMemories
from hmo in dc.DataBoxPCHardwareMonitors
from hmb in dc.DataBoxPCHardwareMotherboards
from hms in dc.DataBoxPCHardwareMouses
from hod in dc.DataBoxPCHardwareOpticalDrives
from hps in dc.DataBoxPCHardwarePowerSupplies
from hpc in dc.DataBoxPCHardwareProcessors
from hsp in dc.DataBoxPCHardwareSpeakers
from hvc in dc.DataBoxPCHardwareVideoCards
from sos in dc.DataBoxPCSoftwareOperatingSystems
select new { hc, hhd, hkb, hmm, hmo, hmb, hms, hod, hps, hpc, hsp, hvc, sos };
Je viens d'éditer la disposition de code pour la rendre plus facile à lire. J'espère que ça ne vous dérange pas. –
Je pense que je l'ai défait accidentellement! –
@Jeff Opps formaté le code en même temps, j'ai roulé à votre version. –