MetaModel.GetTable Methode

Definitie

Retourneert de metagegevens die een gegevensmodeltabel beschrijven.

Overloads

Name Description
GetTable(String, Type)

Retourneert de metagegevens die de opgegeven tabel beschrijven.

GetTable(Type)

Retourneert de metagegevens die de opgegeven tabel beschrijven.

GetTable(String)

Retourneert de metagegevens die zijn gekoppeld aan de opgegeven tabel.

Voorbeelden

In het volgende voorbeeld ziet u hoe u de GetTable overbelaste methoden gebruikt om de volgende taken uit te voeren:

  • Haal het MetaTable object voor de opgegeven tabel op.
  • Krijg toegang tot de metagegevensgegevens die zijn opgenomen in het MetaTable object.

Het voorbeeld bestaat uit een pagina en het bijbehorende code-behind-bestand.

<%@ Page Language="C#" AutoEventWireup="true" 
CodeFile="GetTable.aspx.cs" 
Inherits="DocGetTable" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
  <title></title>
</head>
<body>
    <h2>GetTable Methods</h2>

    <form runat="server">
  
     <asp:GridView ID="GridDataSource1" runat="server"
        AutoGenerateColumns="false"
        DataSourceID="LinqDataSource1"
        AllowPaging="true">
        <Columns>
          <asp:DynamicField DataField="FirstName" />
          <asp:DynamicField DataField="LastName" />
          <asp:TemplateField HeaderText="Addresses">
            <ItemTemplate>
              <%# GetAdresses(2)%>
            </ItemTemplate>
          </asp:TemplateField>
        </Columns>
      </asp:GridView>
        
    </form>
    
     <asp:LinqDataSource ID="LinqDataSource1" runat="server" 
        TableName="Customers"
        ContextTypeName="AdventureWorksLTDataContext" >
      </asp:LinqDataSource>
</body>
<%@ Page Language="VB" AutoEventWireup="false" 
CodeFile="GetTable.aspx.vb" 
Inherits="GetTable" %>

<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
  <title></title>
</head>
<body>
    <h2>GetTable Methods</h2>

    <form id="Form1" runat="server">
  
     <asp:GridView ID="GridDataSource1" runat="server"
        AutoGenerateColumns="false"
        DataSourceID="LinqDataSource1"
        AllowPaging="true">
        <Columns>
          <asp:DynamicField DataField="FirstName" />
          <asp:DynamicField DataField="LastName" />
          <asp:TemplateField HeaderText="Addresses">
            <ItemTemplate>
              <%# GetAdresses(2)%>
            </ItemTemplate>
          </asp:TemplateField>
        </Columns>
      </asp:GridView>
        
    </form>
    
     <asp:LinqDataSource ID="LinqDataSource1" runat="server" 
        TableName="Customers"
        ContextTypeName="AdventureWorksLTDataContext" >
      </asp:LinqDataSource>
</body>
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Web.DynamicData;
using System.Text;

public partial class DocGetTable : System.Web.UI.Page
{
     protected void Page_Load(object sender, EventArgs e) 
     {
     }

    // Use GetTable methods.
    public string GetAdresses(int index)
    {
        // Get the default data model.
        MetaModel model = MetaModel.Default;
   
        MetaTable mTable;

        switch (index)
        {
            case 0:
                // Get the metatable for the table with the
                // specified entity type.
                mTable = model.GetTable(typeof(CustomerAddress));
                break;
            case 1:
                // Get the metatable for the table with the 
                // specified table name.
                mTable = model.GetTable("CustomerAddresses");
                break;
            case 2:
                // Get the metatable for the table with the 
                // specified table name and the specified data
                // context.
                mTable = model.GetTable("CustomerAddresses", typeof(AdventureWorksLTDataContext));
                break;
            default:
                mTable = model.GetTable(typeof(CustomerAddress));
                break;
        }

        // The following code dislays the actual value 
        // (adress) associated with a customer and link
        // to the related Addresses table.
        MetaForeignKeyColumn fkColumn = 
            (MetaForeignKeyColumn)mTable.GetColumn("Address");

        Customer row = (Customer)GetDataItem();

        StringBuilder addressList = new StringBuilder();

        foreach (CustomerAddress childRow in row.CustomerAddresses)
        {
            addressList.Append(childRow.AddressType);
            addressList.Append(":<br/>");
            addressList.Append("<a href='");
            addressList.Append(fkColumn.GetForeignKeyDetailsPath(childRow.Address));
            addressList.Append("'>");
            addressList.Append(childRow.Address.AddressLine1);
            addressList.Append("</a><br/><br/>");
        }

        return addressList.ToString();
    }
}
Imports System.Collections
Imports System.Configuration
Imports System.Data
Imports System.Linq
Imports System.Web
Imports System.Web.Security
Imports System.Web.UI
Imports System.Web.UI.HtmlControls
Imports System.Web.UI.WebControls
Imports System.Web.UI.WebControls.WebParts
Imports System.Xml.Linq
Imports System.Web.DynamicData
Imports System.Text

Partial Public Class DocGetTable
    Inherits System.Web.UI.Page
     Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)

     End Sub

    ' Use GetTable methods.
    Public Function GetAdresses(ByVal index As Integer) As String
        ' Get the default data model.
        Dim model As MetaModel = MetaModel.Default

        Dim mTable As MetaTable

        Select Case index
            Case 0
                ' Get the metatable for the table with the
                ' specified entity type.
                mTable = model.GetTable(GetType(CustomerAddress))
            Case 1
                ' Get the metatable for the table with the 
                ' specified table name.
                mTable = model.GetTable("CustomerAddresses")
            Case 2
                ' Get the metatable for the table with the 
                ' specified table name and the specified data
                ' context.
                mTable = model.GetTable("CustomerAddresses", GetType(AdventureWorksLTDataContext))
            Case Else
                mTable = model.GetTable(GetType(CustomerAddress))
        End Select

        ' The following code dislays the actual value 
        ' (adress) associated with a customer and link
        ' to the related Addresses table.
        Dim fkColumn As MetaForeignKeyColumn = CType(mTable.GetColumn("Address"), MetaForeignKeyColumn)

        Dim row As Customer = CType(GetDataItem(), Customer)


        Dim addressList As New StringBuilder()

        For Each childRow As CustomerAddress In row.CustomerAddresses
            addressList.Append(childRow.AddressType)
            addressList.Append(":<br/>")
            addressList.Append("<a href='")
            addressList.Append(fkColumn.GetForeignKeyDetailsPath(childRow.Address))
            addressList.Append("'>")
            addressList.Append(childRow.Address.AddressLine1)
            addressList.Append("</a><br/><br/>")
        Next childRow

        Return addressList.ToString()

    End Function

End Class

Opmerkingen

Het MetaTable object dat wordt geretourneerd door de overbelaste methoden bevat de metagegevensgegevens die zijn gekoppeld aan de opgegeven tabel.

GetTable(String, Type)

Retourneert de metagegevens die de opgegeven tabel beschrijven.

public:
 System::Web::DynamicData::MetaTable ^ GetTable(System::String ^ tableName, Type ^ contextType);
public System.Web.DynamicData.MetaTable GetTable(string tableName, Type contextType);
member this.GetTable : string * Type -> System.Web.DynamicData.MetaTable
Public Function GetTable (tableName As String, contextType As Type) As MetaTable

Parameters

tableName
String

De naam van de tabel.

contextType
Type

De gegevenscontext om naar de tabel te zoeken.

Retouren

De metagegevens die de opgegeven tabel beschrijven.

Uitzonderingen

tablename of contextType is null.

De context is niet geregistreerd of de tabel bestaat niet in de gegevenscontext.

Voorbeelden

In het volgende voorbeeld ziet u hoe u de GetTable(String, Type) methode gebruikt om de metagegevens voor de opgegeven tabel te verkrijgen. Zie voor een volledig voorbeeld GetTable.

// Get the metatable for the table with the 
// specified table name and the specified data
// context.
mTable = model.GetTable("CustomerAddresses", typeof(AdventureWorksLTDataContext));
' Get the metatable for the table with the 
' specified table name and the specified data
' context.
mTable = model.GetTable("CustomerAddresses", GetType(AdventureWorksLTDataContext))

Zie ook

Van toepassing op

GetTable(Type)

Retourneert de metagegevens die de opgegeven tabel beschrijven.

public:
 System::Web::DynamicData::MetaTable ^ GetTable(Type ^ entityType);
public System.Web.DynamicData.MetaTable GetTable(Type entityType);
member this.GetTable : Type -> System.Web.DynamicData.MetaTable
Public Function GetTable (entityType As Type) As MetaTable

Parameters

entityType
Type

Het type waarmee de tabel in het gegevensmodel wordt geïdentificeerd.

Retouren

De metagegevens die de opgegeven tabel beschrijven.

Uitzonderingen

Het type is niet gevonden in het gegevensmodel.

Voorbeelden

In het volgende voorbeeld ziet u hoe u de GetTable(Type) methode gebruikt om de metagegevens voor de opgegeven tabel te verkrijgen. Zie voor een volledig voorbeeld GetTable.

// Get the metatable for the table with the
// specified entity type.
mTable = model.GetTable(typeof(CustomerAddress));
' Get the metatable for the table with the
' specified entity type.
mTable = model.GetTable(GetType(CustomerAddress))

Zie ook

Van toepassing op

GetTable(String)

Retourneert de metagegevens die zijn gekoppeld aan de opgegeven tabel.

public:
 System::Web::DynamicData::MetaTable ^ GetTable(System::String ^ uniqueTableName);
public System.Web.DynamicData.MetaTable GetTable(string uniqueTableName);
member this.GetTable : string -> System.Web.DynamicData.MetaTable
Public Function GetTable (uniqueTableName As String) As MetaTable

Parameters

uniqueTableName
String

De naam waarmee de tabel in het gegevensmodel wordt geïdentificeerd.

Retouren

De metagegevens die de opgegeven tabel beschrijven.

Uitzonderingen

De naam is niet gevonden in het gegevensmodel.

Voorbeelden

In het volgende voorbeeld ziet u hoe u de GetTable(String) methode gebruikt om de metagegevens voor de opgegeven tabel te verkrijgen. Zie voor een volledig voorbeeld GetTable.

// Get the metatable for the table with the 
// specified table name.
mTable = model.GetTable("CustomerAddresses");
' Get the metatable for the table with the 
' specified table name.
mTable = model.GetTable("CustomerAddresses")

Opmerkingen

De naam identificeert een tabel in het gegevensmodel en wordt gebruikt om de gerelateerde URL voor routering te genereren.

Zie ook

Van toepassing op