Sdílet prostřednictvím


Jak: Access záznamy v souvisejících DataTables

Když objekt DataSet tabulek, DataRelation objektu můžete zpřístupnit souvisejících záznamů v jiné tabulce.Například dataset obsahující Customers a Orders tabulek může být k dispozici.

Můžete použít DataRelation objekt voláním vyhledejte související záznamy GetChildRows metodu DataRow v nadřazené tabulce; Tato metoda vrátí matici souvisejícím podřízeným záznamům.Nebo můžete zavolat GetParentRow metodu DataRow v podřízené tabulce. Tato metoda vrátí jeden DataRow z nadřazené tabulky.

Tato stránka nápovědy obsahuje příklady použití zadané soubory.Informace o navigaci v objektech DataSet netypovou vztahy, viz Navigating a Relationship between Tables.

[!POZNÁMKA]

Pokud pracujete v aplikaci model Windows Forms a zobrazení dat pomocí funkcí vázání dat, může návrhář formuláře generované poskytují dostatek funkce aplikace.Další informace naleznete na stránkách Ovládací prvky vazby na Data v aplikaci Visual Studio, konkrétně Jak: zobrazení souvisejících dat v aplikaci model Windows Forms a Názorný postup: Zobrazení souvisejících dat formuláře systému Windows.

Následující příklady kódu ukazují, pohyb nahoru a dolů vztahy v zadané soubory.Jejich použití zadaného DataRows (NorthwindDataSet.OrdersRow) a vytvořené FindByPrimaryKey (FindByCustomerID) metody a vyhledejte požadovaný řádek a související záznamy.Příklady sestavit a spustit správně pouze v případě, že máte:

  • Instanci objektu DataSet s názvem NorthwindDataSet se Customers tabulky

  • An Orders table

  • Relace s názvem FK_Orders_Customers týkající se dvou tabulek, které jsou k dispozici obor kódu

Navíc je nutné obě tabulky vyplněn data pro všechny záznamy, které mají být vráceny.

Přístup k související záznamy

Vrátit podřízené záznamy vybrané nadřazený záznam

  • Volání GetChildRows metoda konkrétní Customers data řádku a vrátí matici řádky z Orders tabulky:

    Dim customerID As String = "ALFKI"
    Dim orders() As NorthwindDataSet.OrdersRow
    
    orders = CType(NorthwindDataSet.Customers.FindByCustomerID(customerID).
        GetChildRows("FK_Orders_Customers"), NorthwindDataSet.OrdersRow())
    
    MessageBox.Show(orders.Length.ToString())
    
    string custID = "ALFKI";
    NorthwindDataSet.OrdersRow[] orders;
    
    orders = (NorthwindDataSet.OrdersRow[])northwindDataSet.Customers.
        FindByCustomerID(custID).GetChildRows("FK_Orders_Customers");
    
    MessageBox.Show(orders.Length.ToString());
    

Vrátit nadřazený záznam vybraný podřízený záznam

  • Volání GetParentRow metoda konkrétní Orders data řádků a vrátíte se do jednoho řádku z Customers tabulky:

    Dim orderID As Integer = 10707
    Dim customer As NorthwindDataSet.CustomersRow
    
    customer = CType(NorthwindDataSet.Orders.FindByOrderID(orderID).
        GetParentRow("FK_Orders_Customers"), NorthwindDataSet.CustomersRow)
    
    MessageBox.Show(customer.CompanyName)
    
    int orderID = 10707;
    NorthwindDataSet.CustomersRow customer;
    
    customer = (NorthwindDataSet.CustomersRow)northwindDataSet.Orders.
        FindByOrderID(orderID).GetParentRow("FK_Orders_Customers");
    
    MessageBox.Show(customer.CompanyName); 
    

Viz také

Koncepty

Příprava aplikace pro příjem dat.

Načítání dat do aplikace

Ovládací prvky vazby na Data v aplikaci Visual Studio

Data v aplikaci pro úpravy

Ověření dat

Ukládání dat

Další zdroje

Vztahy v objektech DataSet

Přehled dat aplikace Visual Studio

Připojení k datům v aplikaci Visual Studio