Compartilhar via


DataKey Classe

Definição

Representa o(s) campo(s) de chave primária de um registro em um controle com associação de dados.

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
Herança
DataKey
Implementações

Exemplos

O exemplo de código a seguir demonstra como determinar o valor da chave primária de um registro em um DetailsView controle usando a Value propriedade de um 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>

Comentários

A DataKey classe é usada para representar a chave primária para um registro em um controle associado a dados. A chave primária de um registro pode ser composta por um dos mais campos da fonte de dados. Embora a DataKey classe não seja uma coleção, ela pode armazenar vários valores de campo de chave. Os valores de campo de chave são preenchidos quando um dos construtores da DataKey classe é chamado. Você pode recuperar um valor de campo de chave de um DataKey objeto das seguintes maneiras:

  • Use a DataKey.Item[Int32] propriedade para recuperar um valor de campo de chave em um índice específico no DataKey objeto.

  • Use a DataKey.Item[String] propriedade para recuperar um valor de campo de chave de um campo específico.

  • Use a Value propriedade para recuperar o valor do campo de chave no índice 0 no DataKey objeto. Essa propriedade geralmente é usada como um atalho para recuperar o valor da chave de um registro quando a chave primária contém apenas um campo.

  • Use a Values propriedade para criar um IOrderedDictionary objeto que pode ser usado para iterar por meio dos valores de campo de chave.

Em geral, DataKey os objetos são gerados automaticamente por controles associados a dados quando a propriedade do DataKeyNames controle é definida. Os DataKey objetos contêm os valores do campo de chave ou campos especificados na DataKeyNames propriedade. Controles associados a dados que exibem um único registro por vez (como DetailsView ou FormView) geralmente armazenam o DataKey objeto para o registro atual exibido na DataKey propriedade do controle. Controles associados a dados que exibem vários registros por vez (como GridView) geralmente armazenam os DataKey objetos para cada registro no controle em uma DataKeyArray coleção. Em DataKeyArray seguida, a coleção é armazenada na DataKeys propriedade do controle.

Construtores

DataKey(IOrderedDictionary)

Inicializa uma nova instância da classe DataKey usando o dicionário especificado de valores de campo de chave.

DataKey(IOrderedDictionary, String[])

Inicializa uma nova instância da classe DataKey usando o dicionário especificado de valores de campo de chave e uma matriz de nomes de campo.

Propriedades

IsTrackingViewState

Obtém um valor que indica se o objeto DataKey está controlando suas alterações de estado de exibição.

Item[Int32]

Obtém o valor do campo de chave no índice especificado de um objeto DataKey.

Item[String]

Obtém o valor do campo de chave com o nome do campo especificado de um objeto DataKey.

Value

Obtém o valor do campo de chave no índice 0 no objeto DataKey.

Values

Obtém um objeto IOrderedDictionary que contém todos os campos de chave no objeto DataKey.

Métodos

Equals(DataKey)

Determina se a DataKey especificada é igual à chave de dados atual.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
LoadViewState(Object)

Carrega o estado de exibição salvo anteriormente do objeto DataKey.

MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
SaveViewState()

Salva o estado de exibição atual do objeto DataKey.

ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)
TrackViewState()

Marca o ponto inicial no qual começar a acompanhar e salvar as alterações de estado de exibição no objeto DataKey.

Implantações explícitas de interface

IStateManager.IsTrackingViewState

Obtém um valor que indica se o objeto DataKey está controlando suas alterações de estado de exibição.

IStateManager.LoadViewState(Object)

Carrega o estado de exibição salvo anteriormente do objeto DataKey.

IStateManager.SaveViewState()

Salva o estado de exibição atual do objeto DataKey.

IStateManager.TrackViewState()

Marca o ponto inicial no qual começar a acompanhar e salvar as alterações de estado de exibição no objeto DataKey.

Aplica-se a

Confira também