DataKeyArray.GetEnumerator Methode
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.
Gibt einen Enumerator zurück, der alle DataKey-Objekte der Auflistung enthält.
public:
virtual System::Collections::IEnumerator ^ GetEnumerator();
public System.Collections.IEnumerator GetEnumerator ();
abstract member GetEnumerator : unit -> System.Collections.IEnumerator
override this.GetEnumerator : unit -> System.Collections.IEnumerator
Public Function GetEnumerator () As IEnumerator
Gibt zurück
Ein implementiertes IEnumerator-Objekt, das alle DataKey-Objekte in der Auflistung enthält.
Implementiert
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie sie durch die von der GetEnumerator Methode erstellte Aufzählung durchlaufen werden.
<%@ Page language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
void CustomerGridView_DataBound(Object sender, EventArgs e)
{
// Use the Count property to determine whether the
// DataKeys collection contains any items.
if (CustomerGridView.DataKeys.Count > 0)
{
MessageLabel.Text = "The primary key of each record displayed are: <br/><br/>";
// Use the GetEnumerator method to create an enumerator that
// contains the DataKey objects for the GridView control.
IEnumerator keyEnumerator = CustomerGridView.DataKeys.GetEnumerator();
// Iterate though the enumerator and display the primary key
// value of each record displayed.
while (keyEnumerator.MoveNext())
{
DataKey key = (DataKey)keyEnumerator.Current;
MessageLabel.Text += key.Value.ToString() + "<br/>";
}
}
else
{
MessageLabel.Text = "No DataKey objects.";
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DataKeyArray Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DataKeyArray Example</h3>
<asp:gridview id="CustomerGridView"
datasourceid="CustomerDataSource"
autogeneratecolumns="true"
datakeynames="CustomerID"
allowpaging="true"
ondatabound="CustomerGridView_DataBound"
runat="server">
</asp:gridview>
<br/>
<asp:label id="MessageLabel"
forecolor="Red"
runat="server"/>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the Northwind sample database. Use an ASP.NET -->
<!-- expression to retrieve the connection string value -->
<!-- from the Web.config file. -->
<asp:sqldatasource id="CustomerDataSource"
selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"
connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server"/>
</form>
</body>
</html>
<%@ Page language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Sub CustomerGridView_DataBound(ByVal sender As Object, ByVal e As EventArgs) Handles CustomerGridView.DataBound
' Use the Count property to determine whether the
' DataKeys collection contains any items.
If CustomerGridView.DataKeys.Count > 0 Then
MessageLabel.Text = "The primary key of each record displayed are: <br/><br/>"
' Use the GetEnumerator method to create an enumerator that
' contains the DataKey objects for the GridView control.
Dim keyEnumerator As IEnumerator = CustomerGridView.DataKeys.GetEnumerator()
' Iterate though the enumerator and display the primary key
' value of each record displayed.
While keyEnumerator.MoveNext()
Dim key As DataKey = CType(keyEnumerator.Current, DataKey)
MessageLabel.Text &= key.Value.ToString() & "<br/>"
End While
Else
MessageLabel.Text = "No DataKey objects."
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DataKeyArray Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DataKeyArray Example</h3>
<asp:gridview id="CustomerGridView"
datasourceid="CustomerDataSource"
autogeneratecolumns="true"
datakeynames="CustomerID"
allowpaging="true"
runat="server">
</asp:gridview>
<br/>
<asp:label id="MessageLabel"
forecolor="Red"
runat="server"/>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the Northwind sample database. Use an ASP.NET -->
<!-- expression to retrieve the connection string value -->
<!-- from the Web.config file. -->
<asp:sqldatasource id="CustomerDataSource"
selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"
connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server"/>
</form>
</body>
</html>
Hinweise
Verwenden Sie die GetEnumerator Methode, um einen Aufzählungsator abzurufen, der linear durchlaufen werden kann, um auf jedes Element in der Auflistung zuzugreifen. Verwenden Sie die IEnumerator.Current Eigenschaft, um auf das Element an der aktuellen Position im Enumerationerator zuzugreifen. Verwenden Sie die IEnumerator.MoveNext Methode, um zum nächsten Element in der Auflistung zu wechseln. Verwenden Sie die Methode, um den Aufzählungsator an die IEnumerator.Reset ursprüngliche Position zu verschieben.
Hinweis
Wenn Sie zunächst den Aufzählungsator abrufen oder die IEnumerator.Reset Methode verwenden, um den Aufzählungsator in das erste Element in der Auflistung zu verschieben, müssen Sie die IEnumerator.MoveNext Methode aufrufen. Andernfalls wird das durch die IEnumerator.Current Eigenschaft dargestellte Element nicht definiert.