Compartilhar via


DataTable.LoadDataRow Método

Definição

Localiza e atualiza uma linha específica. Se nenhuma linha correspondente for encontrada, uma nova linha será criada usando os valores fornecidos.

Sobrecargas

LoadDataRow(Object[], Boolean)

Localiza e atualiza uma linha específica. Se nenhuma linha correspondente for encontrada, uma nova linha será criada usando os valores fornecidos.

LoadDataRow(Object[], LoadOption)

Localiza e atualiza uma linha específica. Se nenhuma linha correspondente for encontrada, uma nova linha será criada usando os valores fornecidos.

LoadDataRow(Object[], Boolean)

Origem:
DataTable.cs
Origem:
DataTable.cs
Origem:
DataTable.cs

Localiza e atualiza uma linha específica. Se nenhuma linha correspondente for encontrada, uma nova linha será criada usando os valores fornecidos.

public:
 System::Data::DataRow ^ LoadDataRow(cli::array <System::Object ^> ^ values, bool fAcceptChanges);
public System.Data.DataRow LoadDataRow (object?[] values, bool fAcceptChanges);
public System.Data.DataRow LoadDataRow (object[] values, bool fAcceptChanges);
member this.LoadDataRow : obj[] * bool -> System.Data.DataRow
Public Function LoadDataRow (values As Object(), fAcceptChanges As Boolean) As DataRow

Parâmetros

values
Object[]

Uma matriz de valores usados para criar a nova linha.

fAcceptChanges
Boolean

true para aceitar alterações; caso contrário, false.

Retornos

O novo DataRow.

Exceções

A matriz é maior que o número de colunas na tabela.

Um valor não corresponde a seu respectivo tipo de coluna.

Adicionar a linha invalida uma restrição.

Tentativa de colocar um valor nulo em uma coluna em que AllowDBNull é falso.

Exemplos

O exemplo a seguir usa o LoadDataRow método para tentar localizar uma linha. Se nenhuma linha desse tipo for encontrada, os valores serão usados para criar uma nova linha.

using System;
using System.Data;

class MyDataSet {
   public static void Main() {
      DataTable dt = new DataTable();

      DataColumn dc1 = new DataColumn("col1");
      DataColumn dc2 = new DataColumn("col2");
      DataColumn dc3 = new DataColumn("col3");

      dt.Columns.Add(dc1);
      dt.Columns.Add(dc2);
      dt.Columns.Add(dc3);

      // Create an array for the values.
      object[] newRow = new object[3];

      // Set the values of the array.
      newRow[0] = "Hello";
      newRow[1] = "World";
      newRow[2] = "two";
      DataRow row;

      dt.BeginLoadData();

      // Add the new row to the rows collection.
      row = dt.LoadDataRow(newRow, true);

      foreach (DataRow dr in dt.Rows) {
         Console.WriteLine(String.Format("Row: {0}, {1}, {2}", dr["col1"], dr["col2"], dr["col3"]));
      }

      dt.EndLoadData();
   }
}
Imports System.Data

Class MyDataSet
   Public Shared Sub Main()
      Dim dt As New DataTable()

      Dim dc1 As New DataColumn("col1")
      Dim dc2 As New DataColumn("col2")
      Dim dc3 As New DataColumn("col3")

      dt.Columns.Add(dc1)
      dt.Columns.Add(dc2)
      dt.Columns.Add(dc3)

      ' Create an array for the values.
      Dim newRow As Object() = New Object(2) {}

      ' Set the values of the array.
      newRow(0) = "Hello"
      newRow(1) = "World"
      newRow(2) = "two"
      Dim row As DataRow

      dt.BeginLoadData()

      ' Add the new row to the rows collection.
      row = dt.LoadDataRow(newRow, True)

      For Each dr As DataRow In dt.Rows
         Console.WriteLine([String].Format("Row: {0}, {1}, {2}", dr("col1"), dr("col2"), dr("col3")))
      Next

      dt.EndLoadData()
   End Sub
End Class

Comentários

O LoadDataRow método usa uma matriz de valores e localiza os valores correspondentes nas colunas de chave primária.

Se uma coluna tiver um valor padrão, passe um valor nulo na matriz para definir o valor padrão para essa coluna. Da mesma forma, se uma coluna tiver sua AutoIncrement propriedade definida como true, passe um valor nulo na matriz para definir o valor gerado automaticamente para a linha.

Se o fAcceptChanges parâmetro for true ou não especificado, os novos dados serão adicionados e, em seguida, AcceptChanges serão chamados para aceitar todas as alterações no DataTable; se o argumento for false, as linhas recém-adicionadas serão marcadas como inserções e as alterações nas linhas existentes serão marcadas como modificações.

Exceções também podem ocorrer durante um ColumnChanging evento ou RowChanging . Se ocorrer uma exceção, a linha não será adicionada à tabela.

Use LoadDataRow em conjunto com BeginLoadData e EndLoadData.

Confira também

Aplica-se a

LoadDataRow(Object[], LoadOption)

Origem:
DataTable.cs
Origem:
DataTable.cs
Origem:
DataTable.cs

Localiza e atualiza uma linha específica. Se nenhuma linha correspondente for encontrada, uma nova linha será criada usando os valores fornecidos.

public:
 System::Data::DataRow ^ LoadDataRow(cli::array <System::Object ^> ^ values, System::Data::LoadOption loadOption);
public System.Data.DataRow LoadDataRow (object?[] values, System.Data.LoadOption loadOption);
public System.Data.DataRow LoadDataRow (object[] values, System.Data.LoadOption loadOption);
member this.LoadDataRow : obj[] * System.Data.LoadOption -> System.Data.DataRow
Public Function LoadDataRow (values As Object(), loadOption As LoadOption) As DataRow

Parâmetros

values
Object[]

Uma matriz de valores usados para criar a nova linha.

loadOption
LoadOption

Usado para determinar como os valores da matriz são aplicados aos valores correspondentes em uma linha existente.

Retornos

O novo DataRow.

Comentários

O LoadDataRow método usa uma matriz de valores e localiza os valores correspondentes nas colunas de chave primária.

Se uma coluna tiver um valor padrão, passe um valor nulo na matriz para definir o valor padrão para essa coluna. Da mesma forma, se uma coluna tiver sua AutoIncrement propriedade definida como true, passe um valor nulo na matriz para definir o valor gerado automaticamente para a linha.

O valor do loadOption parâmetro é usado para determinar como os valores na matriz são aplicados a uma linha existente. Por exemplo, se loadOption for definido como OverwriteChanges, os Original valores e Current de cada coluna serão substituídos pelos valores na linha de entrada e a RowState propriedade será definida Unchangedcomo .

Exceções também podem ocorrer durante um ColumnChanging evento ou RowChanging . Se ocorrer uma exceção, a linha não será adicionada à tabela.

Use LoadDataRow em conjunto com BeginLoadData e EndLoadData.

Confira também

Aplica-se a