supprimer datarow de datatable
Permet de dire que j'ai un datatable dt (il contient des annonceurs) et je veux supprimer une ligne de dt où la advertiserID est égale à une valeur, comment dois-je faire?
DataTable dt = new DataTable();
//populate the table
dt = DynamicCache.GetAdvertisers();
//I can select a datarow like this:
DataRow[] advRow = dt.Select("advertiserID = " + AdvID);
//how do you remove it, this get's me an error
dt.Rows.Remove(advRow)
alors, comment le faire correctement?
Grâce.
Vous dites qu'il vous obtient une erreur. Quelle est l'erreur? Que faut-il dire?
Double Possible de la Suppression des lignes spécifiques de DataTable
Double Possible de la Suppression des lignes spécifiques de DataTable
OriginalL'auteur flavour404 | 2011-04-27
Vous devez vous connecter pour publier un commentaire.
advRow est un TABLEAU. Vous devez pour identifier la ligne dans le tableau à supprimer.
bien sûr, cela ne le supprime de la datatable, pas nécessairement la source de données derrière elle (sql, xml, ...). Qui aura besoin de plus...
et ce serait une bonne idée de vérifier le tableau ou d'itérer le tableau après le select...
En fonction de votre stratégie de mise à jour, oui... à un certain point, vous aurez besoin de faire un
.AcceptChanges();
(voir l'étendue de l'échantillon, j'ai ajouté...)Grâce Cos, c'était super conseils.
L' .AcceptChanges() ne fonctionne que sur les lignes de ce qui existe dans la table! Après .Delete() de la ligne existe toujours (comme DataRowState.Supprimé), mais pas après .Remove()! .AcceptChanges() n'est pas nécessaire dans ce sit.
OriginalL'auteur Cos Callis