DataTable.LoadDataRow Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Encontra e atualiza uma linha específica. Se não for encontrada nenhuma linha correspondente, uma nova linha é criada usando os valores indicados.
Sobrecargas
| Name | Description |
|---|---|
| LoadDataRow(Object[], Boolean) |
Encontra e atualiza uma linha específica. Se não for encontrada nenhuma linha correspondente, uma nova linha é criada usando os valores indicados. |
| LoadDataRow(Object[], LoadOption) |
Encontra e atualiza uma linha específica. Se não for encontrada nenhuma linha correspondente, uma nova linha é criada usando os valores indicados. |
LoadDataRow(Object[], Boolean)
Encontra e atualiza uma linha específica. Se não for encontrada nenhuma linha correspondente, uma nova linha é criada usando os valores indicados.
public:
System::Data::DataRow ^ LoadDataRow(cli::array <System::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[]
Um array de valores usados para criar a nova linha.
- fAcceptChanges
- Boolean
true aceitar mudanças; caso contrário false.
Devoluções
O novo DataRow.
Exceções
O array é maior do que o número de colunas na tabela.
Um valor não corresponde ao respetivo tipo de coluna.
Adicionar a linha invalida uma restrição.
Tentar colocar um nulo numa coluna onde AllowDBNull é falso.
Exemplos
O exemplo seguinte usa o LoadDataRow método para tentar encontrar uma linha. Se não for encontrada tal linha, os valores sã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
Observações
O LoadDataRow método recebe um array de valores e encontra o(s) valor(es) correspondente(s) na(s) coluna(s) da chave primária.
Se uma coluna tiver um valor predefinido, passe um valor nulo no array para definir o valor padrão dessa coluna. De forma semelhante, se uma coluna tiver AutoIncrement a sua propriedade definida como verdadeira, passe um valor nulo no array para definir o valor gerado automaticamente para a linha.
Se o fAcceptChanges parâmetro for true especificado ou não, os novos dados são adicionados e depois AcceptChanges são chamados para aceitar todas as alterações no DataTable; se o argumento for false, as linhas recém-adicionadas são marcadas como inserções, e as alterações às linhas existentes são marcadas como modificações.
Exceções também podem ocorrer durante um ColumnChanging evento de ou RowChanging . Se ocorrer uma exceção, a linha não é adicionada à tabela.
Usar LoadDataRow em conjunto com BeginLoadData e EndLoadData.
Ver também
Aplica-se a
LoadDataRow(Object[], LoadOption)
Encontra e atualiza uma linha específica. Se não for encontrada nenhuma linha correspondente, uma nova linha é criada usando os valores indicados.
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);
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[]
Um array de valores usados para criar a nova linha.
- loadOption
- LoadOption
Usado para determinar como os valores do array são aplicados aos valores correspondentes numa linha existente.
Devoluções
O novo DataRow.
Observações
O LoadDataRow método recebe um array de valores e encontra o(s) valor(es) correspondente(s) na(s) coluna(s) da chave primária.
Se uma coluna tiver um valor predefinido, passe um valor nulo no array para definir o valor padrão dessa coluna. De forma semelhante, se uma coluna tiver AutoIncrement a sua propriedade definida como verdadeira, passe um valor nulo no array para definir o valor gerado automaticamente para a linha.
O valor do loadOption parâmetro é usado para determinar como os valores no array são aplicados a uma linha existente. Por exemplo, se loadOption for definido como OverwriteChanges, os Original valores e Current de cada coluna são substituídos pelos valores da linha de entrada e a RowState propriedade é definida para Unchanged.
Exceções também podem ocorrer durante um ColumnChanging evento de ou RowChanging . Se ocorrer uma exceção, a linha não é adicionada à tabela.
Usar LoadDataRow em conjunto com BeginLoadData e EndLoadData.