DataKey Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Representa o(s) campo(s) de chave(s) primário(s) de um registo num controlo data-bound.
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 seguinte exemplo de código demonstra como determinar o valor primário da chave de um registo num DetailsView controlo 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>
Observações
A DataKey classe é usada para representar a chave primária de um registo num controlo ligado a dados. A chave primária para um registo pode ser composta por um ou mais campos da fonte de dados. Embora a DataKey classe não seja uma coleção, pode armazenar múltiplos valores de campo-chave. Os valores-chave do campo são preenchidos quando um dos construtores da DataKey classe é chamado. Pode recuperar o valor de um campo chave de um DataKey objeto das seguintes formas:
Use a DataKey.Item[Int32] propriedade para recuperar um valor de campo chave num índice específico do DataKey objeto.
Use a DataKey.Item[String] propriedade para recuperar o valor do campo-chave de um campo específico.
Use a Value propriedade para recuperar o valor do campo chave no índice 0 no DataKey objeto. Esta propriedade é frequentemente usada como atalho para recuperar o valor da chave de um registo quando a chave primária contém apenas um campo.
Use a Values propriedade para criar um IOrderedDictionary objeto que possa ser usado para iterar pelos valores-chave dos campos.
Em geral, DataKey os objetos são automaticamente gerados por controlos vinculados a dados quando a propriedade do DataKeyNames controlo é definida. Os DataKey objetos contêm os valores do campo ou campos chave especificados na DataKeyNames propriedade. Os controlos ligados a dados que exibem um único registo de cada vez (como DetailsView ou FormView) geralmente armazenam o DataKey objeto do registo atual exibido na DataKey propriedade do controlo. Os controlos encadernados por dados que exibem múltiplos registos ao mesmo tempo (como GridView) geralmente armazenam os DataKey objetos de cada registo no controlo de uma DataKeyArray coleção. A DataKeyArray coleção é então armazenada na DataKeys propriedade do controlo.
Construtores
| Name | Description |
|---|---|
| DataKey(IOrderedDictionary, String[]) |
Inicializa uma nova instância da DataKey classe usando o dicionário especificado de valores-chave dos campos e o array dos nomes dos campos. |
| DataKey(IOrderedDictionary) |
Inicializa uma nova instância da DataKey classe usando o dicionário especificado dos valores-chave dos campos. |
Propriedades
| Name | Description |
|---|---|
| IsTrackingViewState |
Obtém um valor que indica se o DataKey objeto está a acompanhar as suas alterações de estado de visualização. |
| Item[Int32] |
Obtém o valor do campo chave no índice especificado a partir de um DataKey objeto. |
| Item[String] |
Obtém o valor do campo chave com o nome especificado de um DataKey objeto. |
| Value |
Obtém o valor do campo chave no índice 0 no DataKey objeto. |
| Values |
Obtém um IOrderedDictionary objeto que contém todos os campos-chave do DataKey objeto. |
Métodos
| Name | Description |
|---|---|
| Equals(DataKey) |
Determina se o array especificado DataKey é igual à chave de dados atual. |
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| GetHashCode() |
Serve como função de hash predefinida. (Herdado de Object) |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| LoadViewState(Object) |
Carrega o estado de visualização previamente guardado do DataKey objeto. |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| SaveViewState() |
Guarda o estado atual da vista do DataKey objeto. |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |
| TrackViewState() |
Marca o ponto de partida a partir do qual se deve começar a registar e guardar as alterações de estado de visualização do DataKey objeto. |
Implementações de Interface Explícita
| Name | Description |
|---|---|
| IStateManager.IsTrackingViewState |
Obtém um valor que indica se o DataKey objeto está a acompanhar as suas alterações de estado de visualização. |
| IStateManager.LoadViewState(Object) |
Carrega o estado de visualização previamente guardado do DataKey objeto. |
| IStateManager.SaveViewState() |
Guarda o estado atual da vista do DataKey objeto. |
| IStateManager.TrackViewState() |
Marca o ponto de partida a partir do qual se deve começar a registar e guardar as alterações de estado de visualização do DataKey objeto. |