MetaModel.Tables Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft eine Auflistung aller Tabellen ab, die Teil des Datenmodells sind.
public:
property System::Collections::ObjectModel::ReadOnlyCollection<System::Web::DynamicData::MetaTable ^> ^ Tables { System::Collections::ObjectModel::ReadOnlyCollection<System::Web::DynamicData::MetaTable ^> ^ get(); };
public System.Collections.ObjectModel.ReadOnlyCollection<System.Web.DynamicData.MetaTable> Tables { get; }
member this.Tables : System.Collections.ObjectModel.ReadOnlyCollection<System.Web.DynamicData.MetaTable>
Public ReadOnly Property Tables As ReadOnlyCollection(Of MetaTable)
Eigenschaftswert
Eine Auflistung, die die Tabellen enthält, die zum Datenmodell gehören.
Beispiele
Im folgenden Beispiel wird gezeigt, wie die Tables Eigenschaften und VisibleTables verwendet werden, um die folgenden Aufgaben auszuführen:
Rufen Sie eine Auflistung aller Tabellen in einem Datenmodell ab, und zeigen Sie sie in einem
GridView
-Steuerelement an.Rufen Sie eine Auflistung der sichtbaren Tabellen in einem Datenmodell ab, und zeigen Sie sie in einem -Steuerelement an
GridView
.
Das Beispiel besteht aus einer Seite und der zugehörigen CodeBehind-Datei.
<%@ Page Language="C#" AutoEventWireup="true"
CodeFile="TablesMenu.aspx.cs"
Inherits="TablesMenu" %>
<!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>Tables</h2>
<form runat="server">
<h4>Visible Tables</h4>
<asp:GridView ID="Menu1" runat="server"
AutoGenerateColumns="false">
<Columns>
<asp:TemplateField HeaderText="Table Name" SortExpression="TableName">
<ItemTemplate>
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%#Eval("ListActionPath") %>'><%#Eval("DisplayName") %></asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<h4>Tables in the Data Model</h4>
<asp:GridView ID="Menu2" runat="server"
AutoGenerateColumns="false">
<Columns>
<asp:TemplateField HeaderText="Table Name" SortExpression="TableName">
<ItemTemplate>
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%#Eval("ListActionPath") %>'><%#Eval("DisplayName") %></asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</form>
</body>
<%@ Page Language="VB" AutoEventWireup="true"
CodeFile="TablesMenu.aspx.vb"
Inherits="_TablesMenu" %>
<!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>Tables</h2>
<form id="Form1" runat="server">
<h4>Visible Tables</h4>
<asp:GridView ID="Menu1" runat="server"
AutoGenerateColumns="false">
<Columns>
<asp:TemplateField HeaderText="Table Name" SortExpression="TableName">
<ItemTemplate>
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%#Eval("ListActionPath") %>'><%#Eval("DisplayName") %></asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<h4>Tables in the Data Model</h4>
<asp:GridView ID="Menu2" runat="server"
AutoGenerateColumns="false">
<Columns>
<asp:TemplateField HeaderText="Table Name" SortExpression="TableName">
<ItemTemplate>
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%#Eval("ListActionPath") %>'><%#Eval("DisplayName") %></asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</form>
</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 TablesMenu : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e) {
GetVisibleTables();
GetTables();
}
// Gets all the tables in the data model.
protected void GetTables()
{
System.Collections.IList tables =
MetaModel.Default.Tables;
if (tables.Count == 0)
{
throw new InvalidOperationException(
"There are no tables in the data model.");
}
Menu2.DataSource = tables;
Menu2.DataBind();
}
// Gets only the visible tables in the data model.
protected void GetVisibleTables()
{
System.Collections.IList visibleTables =
MetaModel.Default.VisibleTables;
if (visibleTables.Count == 0)
{
throw new InvalidOperationException(
"There are no accessible tables. Make sure that at least one data model is registered in Global.asax and scaffolding is enabled or implement custom pages.");
}
Menu1.DataSource = visibleTables;
Menu1.DataBind();
}
}
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 _TablesMenu
Inherits System.Web.UI.Page
'Protected Sub Page_Init(ByVal sender As Object, ByVal e As EventArgs)
' GetVisibleTables()
' GetTables()
'End Sub
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
'Dim visibleTables As System.Collections.IList = MetaModel.Default.VisibleTables
'If (visibleTables.Count = 0) Then
' Throw New InvalidOperationException("There are no accessible tables. Make sure that at least one data model is registered in Global.asax a" & _
' "nd scaffolding is enabled or implement custom pages.")
'End If
'Menu1.DataSource = visibleTables
'Menu1.DataBind()
GetVisibleTables()
GetTables()
End Sub
' Gets all the tables in the data model.
Protected Sub GetTables()
Dim tables As System.Collections.IList = MetaModel.[Default].Tables
If tables.Count = 0 Then
Throw New InvalidOperationException("There are no tables in the data model.")
End If
Menu2.DataSource = tables
Menu2.DataBind()
End Sub
' Gets only the visible tables in the data model.
Protected Sub GetVisibleTables()
Dim visibleTables As System.Collections.IList = MetaModel.[Default].VisibleTables
If visibleTables.Count = 0 Then
Throw New InvalidOperationException("There are no accessible tables. Make sure that at least one data model is registered in Global.asax and scaffolding is enabled or implement custom pages.")
End If
Menu1.DataSource = visibleTables
Menu1.DataBind()
End Sub
End Class
Hinweise
Die Auflistung enthält alle Tabellen im Datenmodell, einschließlich der Tabellen, die nicht sichtbar sind (sind nicht Teil des Dynamic Data-Gerüsts).
Führen Sie ein Onlinebeispiel für dieses Feature aus.