DataKey Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rappresenta il campo o i campi chiave primaria di un record in un controllo associato a dati.
public ref class DataKey : System::Web::UI::IStateManager
public ref class DataKey : IEquatable<System::Web::UI::WebControls::DataKey ^>, System::Web::UI::IStateManager
public class DataKey : System.Web.UI.IStateManager
public class DataKey : IEquatable<System.Web.UI.WebControls.DataKey>, System.Web.UI.IStateManager
type DataKey = class
interface IStateManager
type DataKey = class
interface IStateManager
interface IEquatable<DataKey>
Public Class DataKey
Implements IStateManager
Public Class DataKey
Implements IEquatable(Of DataKey), IStateManager
- Ereditarietà
-
DataKey
- Implementazioni
Esempio
Nell'esempio di codice seguente viene illustrato come determinare il valore della chiave primaria di un record in un DetailsView controllo utilizzando la Value proprietà di un DataKey oggetto .
<%@ 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 CustomerDetailsView_DataBound(Object sender, EventArgs e)
{
// Get the DataKey object for the current record.
DataKey key = CustomerDetailsView.DataKey;
// Display the value of the key field.
MessageLabel.Text = "The key field value for the displayed record is " +
key.Value.ToString() + ".";
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DataKey Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DataKey Example</h3>
<asp:detailsview id="CustomerDetailsView"
datasourceid="DetailsViewSource"
autogeneraterows="true"
datakeynames="CustomerID"
allowpaging="true"
ondatabound="CustomerDetailsView_DataBound"
runat="server">
</asp:detailsview>
<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="DetailsViewSource"
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 CustomerDetailsView_DataBound(ByVal sender As Object, ByVal e As EventArgs) Handles CustomerDetailsView.DataBound
' Get the DataKey object for the current record.
Dim key As DataKey = CustomerDetailsView.DataKey
' Display the value of the key field.
MessageLabel.Text = "The key field value for the displayed record is " & _
key.Value.ToString() & "."
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DataKey Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DataKey Example</h3>
<asp:detailsview id="CustomerDetailsView"
datasourceid="DetailsViewSource"
autogeneraterows="true"
datakeynames="CustomerID"
allowpaging="true"
runat="server">
</asp:detailsview>
<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="DetailsViewSource"
selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"
connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server"/>
</form>
</body>
</html>
Commenti
La DataKey classe viene usata per rappresentare la chiave primaria per un record in un controllo associato a dati. La chiave primaria per un record può essere composta da uno di più campi dall'origine dati. Anche se la DataKey classe non è una raccolta, può archiviare più valori di campo chiave. I valori dei campi chiave vengono popolati quando viene chiamato uno dei costruttori per la DataKey classe . È possibile recuperare un valore di campo chiave da un DataKey oggetto nei modi seguenti:
Utilizzare la DataKey.Item[Int32] proprietà per recuperare un valore di campo chiave in corrispondenza di un indice specifico nell'oggetto DataKey .
Utilizzare la DataKey.Item[String] proprietà per recuperare un valore di campo chiave di un campo specifico.
Utilizzare la Value proprietà per recuperare il valore del campo chiave in corrispondenza dell'indice 0 nell'oggetto DataKey . Questa proprietà viene spesso utilizzata come collegamento per recuperare il valore della chiave di un record quando la chiave primaria contiene un solo campo.
Utilizzare la Values proprietà per creare un IOrderedDictionary oggetto che può essere usato per scorrere i valori dei campi chiave.
In generale, DataKey gli oggetti vengono generati automaticamente dai controlli associati a dati quando viene impostata la proprietà del DataKeyNames
controllo. Gli DataKey oggetti contengono i valori del campo o dei campi chiave specificati nella DataKeyNames
proprietà . I controlli associati a dati che visualizzano un singolo record alla volta (ad esempio DetailsView o FormView) in genere archiviano l'oggetto DataKey per il record corrente visualizzato nella DataKey
proprietà del controllo . I controlli associati a dati che visualizzano più record alla volta ,ad esempio GridView, in genere archiviano gli DataKey oggetti per ogni record nel controllo in una DataKeyArray raccolta. La DataKeyArray raccolta viene quindi archiviata nella DataKeys
proprietà del controllo .
Costruttori
DataKey(IOrderedDictionary) |
Inizializza una nuova istanza della classe DataKey utilizzando il dizionario specificato dei valori di campo di chiave. |
DataKey(IOrderedDictionary, String[]) |
Inizializza una nuova istanza della classe DataKey utilizzando il dizionario dei valori di campo di chiave e la matrice dei nomi di campo. |
Proprietà
IsTrackingViewState |
Ottiene un valore che indica se l'oggetto DataKey tiene traccia delle modifiche apportate al relativo stato di visualizzazione. |
Item[Int32] |
Ottiene il valore del campo di chiave in corrispondenza dell'indice specificato da un oggetto DataKey. |
Item[String] |
Ottiene il valore del campo di chiave con il nome di campo specificato da un oggetto DataKey. |
Value |
Ottiene il valore del campo di chiave in corrispondenza del valore 0 dell'indice nell'oggetto DataKey. |
Values |
Ottiene un oggetto IOrderedDictionary che contiene tutti i campi di chiave presenti nell'oggetto DataKey. |
Metodi
Equals(DataKey) |
Determina se la matrice DataKey specificata corrisponde alla chiave di dati corrente. |
Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
LoadViewState(Object) |
Consente di caricare lo stato di visualizzazione dell'oggetto DataKey precedentemente salvato. |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
SaveViewState() |
Salva lo stato di visualizzazione corrente dell'oggetto DataKey. |
ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
TrackViewState() |
Viene contrassegnato il punto iniziale per la registrazione e il salvataggio delle modifiche dello stato di visualizzazione nell'oggetto DataKey. |
Implementazioni dell'interfaccia esplicita
IStateManager.IsTrackingViewState |
Ottiene un valore che indica se l'oggetto DataKey tiene traccia delle modifiche apportate al relativo stato di visualizzazione. |
IStateManager.LoadViewState(Object) |
Consente di caricare lo stato di visualizzazione dell'oggetto DataKey precedentemente salvato. |
IStateManager.SaveViewState() |
Salva lo stato di visualizzazione corrente dell'oggetto DataKey. |
IStateManager.TrackViewState() |
Viene contrassegnato il punto iniziale per la registrazione e il salvataggio delle modifiche dello stato di visualizzazione nell'oggetto DataKey. |