2011-04-11 3 views
1

J'ai 2 ensembles de données ds1 et ds2 ds1 contient des valeurs valides utilisées dans ds2 par exemple. ds1 contient la table des matières contenant Maths, Science, History. ds2 contient la table des stagiaires La table des stagiaires contient une colonne Objet. ds2-> Student-> Les valeurs de sujet doivent être présentes dans le tableau ds-> subject.Comparer la colonne avec des valeurs valides

Comment implémenter ce type de validation de façon efficace. Je ne veux pas parcourir chaque rangée et colonne de la table des étudiants.

par exemple.
étudiants Tableau
Nom Sujet
Peter Mathématiques
George Sciences
Joe IT
Histoire Roger

Sujets Tableau
Sujet
Mathématiques
Sciences
Mathématiques
Histoire

Maintenant, je veux valider les données dans le tableau étudiants par rapport au tableau Sujet Vérifiez si le sujet est présent dans le tableau des sujets ou non. Ici, je veux la ligne Joe IT depuis IT n'est pas présent dans la table des matières il est invalide.

De même, j'ai besoin de vérifier les données de table Students avec plusieurs tables comme des sujets.

Je veux une requête LINQ.

+0

S'il vous plaît créer une question plus claire. Donnez quelques exemples et expliquez pourquoi vous ne voulez pas parcourir les lignes/colonnes. – CodingBarfield

+0

Vous pouvez utiliser Linq pour interroger les DataTables, mais en fonction de votre scénario, l'itération sur les tables peut certainement être efficace. Besoin de plus d'informations sur ce que vous essayez d'accomplir si. – mservidio

Répondre

1

Utilisation suivant requête

var noSubject = 
    ds.Student.AsEnumerable().Where(s => ds.Subject.Rows.Find(s.Subject) == null); 
Questions connexes