Compartilhar via


DataRows e DataRowViews

Um DataView expõe uma coleção enumerável de objetos DataRowView. Os objetos DataRowView expõem valores como matrizes de objeto indexadas pelo nome ou pela referência ordinal da coluna na tabela subjacente. Você pode acessar o DataRow exposto pelo DataRowView usando a propriedade Row do DataRowView.

Quando você exibe valores usando um DataRowView, a propriedade RowStateFilter do DataView determina qual versão da linha do DataRow subjacente é exposta. Para obter informações sobre como acessar diferentes versões de linha usando um DataRow, consulte Estados e Versões de Linha.

O exemplo de código a seguir exibe todos os valores atuais e originais em uma tabela.

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();  
  }  
}  

Confira também