DataKey Clase

Definición

Representa el campo de clave principal o los campos de un registro de un control enlazado a datos.

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
Herencia
DataKey
Implementaciones

Ejemplos

En el ejemplo de código siguiente se muestra cómo determinar el valor de clave principal de un registro en un DetailsView control mediante la Value propiedad de un DataKey objeto .


<%@ 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>

Comentarios

La DataKey clase se usa para representar la clave principal de un registro en un control enlazado a datos. La clave principal de un registro se puede componer de uno de los campos más del origen de datos. Aunque la DataKey clase no es una colección, puede almacenar varios valores de campo de clave. Los valores de campo de clave se rellenan cuando se llama a uno de los constructores de la DataKey clase . Puede recuperar un valor de campo de clave de un DataKey objeto de las siguientes maneras:

  • Utilice la DataKey.Item[Int32] propiedad para recuperar un valor de campo de clave en un índice específico del DataKey objeto .

  • Utilice la DataKey.Item[String] propiedad para recuperar un valor de campo de clave de un campo específico.

  • Utilice la Value propiedad para recuperar el valor del campo de clave en el índice 0 del DataKey objeto . Esta propiedad se usa a menudo como acceso directo para recuperar el valor de clave de un registro cuando la clave principal contiene solo un campo.

  • Utilice la Values propiedad para crear un IOrderedDictionary objeto que se pueda usar para recorrer en iteración los valores del campo de clave.

En general, DataKey los controles enlazados a datos generan automáticamente los objetos cuando se establece la propiedad del DataKeyNames control. Los DataKey objetos contienen los valores del campo de clave o campos especificados en la DataKeyNames propiedad . Los controles enlazados a datos que muestran un único registro a la vez (como DetailsView o FormView) generalmente almacenan el DataKey objeto para el registro actual mostrado en la DataKey propiedad del control. Los controles enlazados a datos que muestran varios registros a la vez (como GridView) suelen almacenar los DataKey objetos de cada registro del control de una DataKeyArray colección. A DataKeyArray continuación, la colección se almacena en la DataKeys propiedad del control .

Constructores

DataKey(IOrderedDictionary)

Inicializa una instancia nueva de la clase DataKey utilizando el diccionario especificado de valores de campo clave.

DataKey(IOrderedDictionary, String[])

Inicializa una instancia nueva de la clase DataKey utilizando el diccionario de valores de campo clave y matriz de nombres de campo especificados.

Propiedades

IsTrackingViewState

Obtiene un valor que indica si el objeto DataKey realiza el seguimiento de los cambios de su estado de vista.

Item[Int32]

Obtiene el valor del campo clave situado en el índice especificado de un objeto DataKey.

Item[String]

Obtiene el valor del campo clave con el nombre de campo especificado de un objeto DataKey.

Value

Obtiene el valor del campo clave situado en el índice 0 del objeto DataKey.

Values

Obtiene un objeto IOrderedDictionary que contiene todos los campos clave del objeto DataKey.

Métodos

Equals(DataKey)

Determina si la matriz especificada de objetos DataKey equivale a la clave de datos actual.

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
LoadViewState(Object)

Carga el estado de vista guardado previamente del objeto DataKey.

MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
SaveViewState()

Guarda el estado de vista actual del objeto DataKey.

ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)
TrackViewState()

Marca el punto de inicio en que se debe empezar a realizar el seguimiento y a guardar los cambios del objeto DataKey.

Implementaciones de interfaz explícitas

IStateManager.IsTrackingViewState

Obtiene un valor que indica si el objeto DataKey realiza el seguimiento de los cambios de su estado de vista.

IStateManager.LoadViewState(Object)

Carga el estado de vista guardado previamente del objeto DataKey.

IStateManager.SaveViewState()

Guarda el estado de vista actual del objeto DataKey.

IStateManager.TrackViewState()

Marca el punto de inicio en que se debe empezar a realizar el seguimiento y a guardar los cambios del objeto DataKey.

Se aplica a

Consulte también