Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Après avoir vérifié la précision des modifications apportées aux données dans un DataTable, vous pouvez accepter les modifications à l’aide de la AcceptChanges méthode de DataRow, DataTable ou DataSet, qui définit les Current valeurs de ligne sur les Original valeurs et définit la RowState propriété sur Inchangée. L’acceptation ou le rejet des modifications efface RowError toutes les informations et définit la HasErrors propriété sur false. L’acceptation ou le rejet des modifications peut également affecter la mise à jour des données dans la source de données. Pour plus d’informations, consultez Mise à jour des sources de données avec DataAdapters.
Si des contraintes de clé étrangère existent sur DataTable, les modifications acceptées ou rejetées à l'aide de AcceptChanges et RejectChanges sont propagées aux lignes enfants de DataRow selon ForeignKeyConstraint.AcceptRejectRule. Pour plus d’informations, consultez Contraintes DataTable.
L’exemple suivant vérifie les lignes avec des erreurs, résout les erreurs le cas échéant et rejette les lignes où l’erreur ne peut pas être résolue. Notez que, pour les erreurs résolues, la RowError valeur est réinitialisée à une chaîne vide, ce qui entraîne la définition de la HasErrors propriété sur false. Lorsque toutes les lignes avec des erreurs ont été résolues ou rejetées, AcceptChanges est appelé pour accepter toutes les modifications de l’intégralité de DataTable.
If workTable.HasErrors Then
Dim errRow As DataRow
For Each errRow in workTable.GetErrors()
If errRow.RowError = "Total cannot exceed 1000." Then
errRow("Total") = 1000
errRow.RowError = "" ' Clear the error.
Else
errRow.RejectChanges()
End If
Next
End If
workTable.AcceptChanges()
if (workTable.HasErrors)
{
foreach (DataRow errRow in workTable.GetErrors())
{
if (errRow.RowError == "Total cannot exceed 1000.")
{
errRow["Total"] = 1000;
errRow.RowError = ""; // Clear the error.
}
else
errRow.RejectChanges();
}
}
workTable.AcceptChanges();