DataRows et DataRowViews
Un objet DataView expose une collection énumérable d’objets DataRowView. Les objets DataRowView exposent les valeurs sous forme de tableaux d’objets indexés soit en fonction du nom, soit en fonction de la référence ordinale de la colonne dans la table sous-jacente. Vous pouvez accéder à l’objet DataRow exposé par la DataRowView à l’aide de la propriété Row de la DataRowView.
Lorsque vous affichez des valeurs à l’aide d’une DataRowView, la propriété RowStateFilter de la DataView détermine la version de ligne de la DataRow sous-jacente qui est exposée. Pour plus d’informations sur l’accès à différentes versions de lignes à l’aide d’une DataRow, consultez États et versions des lignes.
L'exemple de code suivant affiche toutes les valeurs actuelles et d'origine d'une table.
Dim catView As DataView = New DataView(catDS.Tables("Categories"))
Console.WriteLine("Current Values:")
WriteView(catView)
Console.WriteLine("Original Values:")
catView.RowStateFilter = DataViewRowState.ModifiedOriginal
WriteView(catView)
Public Shared Sub WriteView(thisDataView As DataView)
Dim rowView As DataRowView
Dim i As Integer
For Each rowView In thisDataView
For i = 0 To thisDataView.Table.Columns.Count - 1
Console.Write(rowView(i) & vbTab)
Next
Console.WriteLine()
Next
End Sub
DataView catView = new DataView(catDS.Tables["Categories"]);
Console.WriteLine("Current Values:");
WriteView(catView);
Console.WriteLine("Original Values:");
catView.RowStateFilter = DataViewRowState.ModifiedOriginal;
WriteView(catView);
public static void WriteView(DataView thisDataView)
{
foreach (DataRowView rowView in thisDataView)
{
for (int i = 0; i < thisDataView.Table.Columns.Count; i++)
Console.Write(rowView[i] + "\t");
Console.WriteLine();
}
}