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 se nenajde žádný odpovídající řádek, vytvoří se nový řádek s použitím zadaných hodnot.
Přetížení
| Name | Description |
|---|---|
| LoadDataRow(Object[], Boolean) |
Najde a aktualizuje konkrétní řádek. Pokud se nenajde žádný odpovídající řádek, vytvoří se nový řádek s použitím zadaných hodnot. |
| LoadDataRow(Object[], LoadOption) |
Najde a aktualizuje konkrétní řádek. Pokud se nenajde žádný odpovídající řádek, vytvoří se nový řádek s použitím zadaných hodnot. |
LoadDataRow(Object[], Boolean)
- Zdroj:
- DataTable.cs
- Zdroj:
- DataTable.cs
- Zdroj:
- DataTable.cs
- Zdroj:
- DataTable.cs
- Zdroj:
- DataTable.cs
Najde a aktualizuje konkrétní řádek. Pokud se nenajde žádný odpovídající řádek, vytvoří se 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ých k vytvoření nového řádku.
- fAcceptChanges
- Boolean
true přijmout změny; jinak false.
Návraty
DataRowNový .
Výjimky
Matice je větší než počet sloupců v tabulce.
Hodnota neodpovídá příslušnému typu sloupce.
Přidání řádku zneplatní omezení.
Pokus o vložení hodnoty null do sloupce, kde AllowDBNull je false.
Příklady
Následující příklad používá metodu k pokusu LoadDataRow o nalezení řádku. Pokud takový řádek nenajdete, hodnoty se použijí 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 v poli hodnotu null a nastavte výchozí hodnotu pro tento sloupec. Podobně platí, že pokud sloupec má vlastnost AutoIncrement nastavenou na hodnotu true, předejte hodnotu null v poli a nastavte automaticky vygenerovanou hodnotu pro řádek.
fAcceptChanges Pokud je true parametr zadán nebo není zadaný, přidají se nová data a pak AcceptChanges se volají, aby přijímala všechny změny v argumentu DataTable; pokud je falseargument , nově přidané řádky jsou označeny jako vložené a změny stávajících řádků jsou označeny jako úpravy.
K výjimkám může dojít také během ColumnChanging události nebo RowChanging události. Pokud dojde k výjimce, řádek se do tabulky nepřidá.
Použití LoadDataRow ve spojení s BeginLoadData a EndLoadData.
Viz také
Platí pro
LoadDataRow(Object[], LoadOption)
- Zdroj:
- DataTable.cs
- Zdroj:
- DataTable.cs
- Zdroj:
- DataTable.cs
- Zdroj:
- DataTable.cs
- Zdroj:
- DataTable.cs
Najde a aktualizuje konkrétní řádek. Pokud se nenajde žádný odpovídající řádek, vytvoří se 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ých 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
DataRowNový .
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 v poli hodnotu null a nastavte výchozí hodnotu pro tento sloupec. Podobně platí, že pokud sloupec má vlastnost AutoIncrement nastavenou na hodnotu true, předejte hodnotu null v poli a nastavte 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 nastavena na OverwriteChanges, Original a Current hodnoty každého sloupce jsou nahrazeny hodnotami v příchozím řádku a RowState vlastnost je nastavena na Unchanged.
K výjimkám může dojít také během ColumnChanging události nebo RowChanging události. Pokud dojde k výjimce, řádek se do tabulky nepřidá.
Použití LoadDataRow ve spojení s BeginLoadData a EndLoadData.