DataTable.LoadDataRow Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Najde a aktualizuje konkrétní řádek. Pokud není nalezen žádný odpovídající řádek, je vytvořen nový řádek s použitím zadaných hodnot.
Přetížení
LoadDataRow(Object[], Boolean) |
Najde a aktualizuje konkrétní řádek. Pokud není nalezen žádný odpovídající řádek, je vytvořen nový řádek s použitím zadaných hodnot. |
LoadDataRow(Object[], LoadOption) |
Najde a aktualizuje konkrétní řádek. Pokud není nalezen žádný odpovídající řádek, je vytvořen nový řádek s použitím zadaných hodnot. |
LoadDataRow(Object[], Boolean)
- Zdroj:
- DataTable.cs
- Zdroj:
- DataTable.cs
- Zdroj:
- DataTable.cs
Najde a aktualizuje konkrétní řádek. Pokud není nalezen žádný odpovídající řádek, je vytvořen nový řádek s použitím zadaných hodnot.
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
Parametry
- values
- Object[]
Pole hodnot použité k vytvoření nového řádku.
- fAcceptChanges
- Boolean
true
přijmout změny; jinak false
.
Návraty
Nový DataRow.
Výjimky
Pole je větší než počet sloupců v tabulce.
Hodnota neodpovídá příslušnému typu sloupce.
Přidáním řádku zrušíte platnost omezení.
Pokus o vložení hodnoty null do sloupce, kde AllowDBNull je false.
Příklady
Následující příklad používá metodu LoadDataRow k pokusu o vyhledání řádku. Pokud se takový řádek nenajde, použijí se hodnoty k vytvoření nového řádku.
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
Poznámky
Metoda LoadDataRow vezme pole hodnot a najde odpovídající hodnoty ve sloupcích primárního klíče.
Pokud má sloupec výchozí hodnotu, předejte do pole hodnotu null a nastavte výchozí hodnotu pro daný sloupec. Podobně platí, že pokud má sloupec vlastnost AutoIncrement nastavenou na hodnotu true, předejte v poli hodnotu null, která nastaví automaticky vygenerovanou hodnotu pro řádek.
fAcceptChanges
Pokud parametr je true
nebo není zadaný, jsou přidána nová data a pak AcceptChanges jsou volána pro přijetí všech změn v argumentu DataTable; pokud argument je false
, nově přidané řádky se označí jako vložení a změny v existujících řádcích se označí jako úpravy.
K výjimkám může dojít také během ColumnChanging události nebo RowChanging . Pokud dojde k výjimce, není řádek přidán do tabulky.
Používejte LoadDataRow ve spojení s BeginLoadData a EndLoadData.
Viz také
Platí pro
LoadDataRow(Object[], LoadOption)
- Zdroj:
- DataTable.cs
- Zdroj:
- DataTable.cs
- Zdroj:
- DataTable.cs
Najde a aktualizuje konkrétní řádek. Pokud není nalezen žádný odpovídající řádek, je vytvořen nový řádek s použitím zadaných hodnot.
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
Parametry
- values
- Object[]
Pole hodnot použité k vytvoření nového řádku.
- loadOption
- LoadOption
Slouží k určení způsobu použití maticových hodnot na odpovídající hodnoty v existujícím řádku.
Návraty
Nový DataRow.
Poznámky
Metoda LoadDataRow vezme pole hodnot a najde odpovídající hodnoty ve sloupcích primárního klíče.
Pokud má sloupec výchozí hodnotu, předejte do pole hodnotu null a nastavte výchozí hodnotu pro daný sloupec. Podobně platí, že pokud má sloupec vlastnost AutoIncrement nastavenou na hodnotu true, předejte v poli hodnotu null, která nastaví automaticky vygenerovanou hodnotu pro řádek.
Hodnota parametru loadOption
se používá k určení způsobu použití hodnot v poli na existující řádek. Pokud loadOption
je například nastavená hodnota OverwriteChanges
, Original
hodnoty a Current
každého sloupce se nahradí hodnotami v příchozím řádku a RowState
vlastnost je nastavená na Unchanged
.
K výjimkám může dojít také během ColumnChanging události nebo RowChanging . Pokud dojde k výjimce, není řádek přidán do tabulky.
Používejte LoadDataRow ve spojení s BeginLoadData a EndLoadData.