J'ai une information de stockage datable sur une classe d'étudiant. Ma table ressemble à ceci:Mise à jour d'un datatable en C#
Student ID Grade Absence Count
00001 85 0
00002 95 7
00002 70 5
00003 35 1
Ne me demandez pas pourquoi il y a deux id qui sont les mêmes ... sa juste la façon dont il est. Maintenant, je veux mettre à jour le nombre d'absences pour l'ID 00002 qui a le nombre d'absence de 7. Dans le même temps, je veux supprimer l'entrée 00002 qui n'a pas le nombre d'absences de 7 (dans ce cas, celui avec le compte 5). Maintenant, je sais comment interroger la table avec une instruction select et mettre à jour l'étudiant id 00002 avec le compte 7. Comment puis-je, en même temps, supprimer l'autre entrée pour l'étudiant 00002? Ceci est mon code:
foreach(oldCount in absenceCount)
{
DataRow[] dr = dt.Select("Student ID='" + ID + "' AND Absence Count='" + oldCount);
dr[0]["Absence Count"] = newCount;
}
Voici donc comment puis-je dire au programme que s'il y a un autre numéro d'étudiant dont le nombre absence isnt dans la liste absenceCount, supprimer de la table?
Merci
Probablement un doublon: http://stackoverflow.com/questions/1591771/datatable-how-to-conditionally-delete-rows – Joulukuusi
Vous aurez besoin de mieux définir les règles entourant la raison pour laquelle vous voulez supprimer le 2ème et mettre à jour le 1er. Est-ce positionnel? Parce que 7> 5? parce que 95> 70? entrée de l'utilisateur? –