DataKey Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Representa el campo de clave principal o los campos de un registro en 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 más campos 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 maneras siguientes:
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 los campos especificados en la DataKeyNames propiedad . Los controles enlazados a datos que muestran un único registro a la vez (como DetailsView o FormView) suelen almacenar 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 para cada registro del control de una DataKeyArray colección. A continuación, la DataKeyArray colección se almacena en la DataKeys propiedad del control .
Constructores
| Nombre | Description |
|---|---|
| DataKey(IOrderedDictionary, String[]) |
Inicializa una nueva instancia de la DataKey clase utilizando el diccionario especificado de valores de campo clave y matriz de nombres de campo. |
| DataKey(IOrderedDictionary) |
Inicializa una nueva instancia de la DataKey clase utilizando el diccionario especificado de valores de campo de clave. |
Propiedades
| Nombre | Description |
|---|---|
| IsTrackingViewState |
Obtiene un valor que indica si el DataKey objeto está realizando el seguimiento de los cambios de estado de vista. |
| Item[Int32] |
Obtiene el valor del campo de clave en el índice especificado de un DataKey objeto . |
| Item[String] |
Obtiene el valor del campo de clave con el nombre de campo especificado de un DataKey objeto . |
| Value |
Obtiene el valor del campo de clave en el índice 0 del DataKey objeto . |
| Values |
Obtiene un IOrderedDictionary objeto que contiene todos los campos de clave del DataKey objeto . |
Métodos
| Nombre | Description |
|---|---|
| Equals(DataKey) |
Determina si la matriz especificada DataKey es igual a la clave de datos actual. |
| Equals(Object) |
Determina si el objeto especificado es igual al objeto actual. (Heredado de Object) |
| GetHashCode() |
Actúa como 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 anteriormente del DataKey objeto. |
| MemberwiseClone() |
Crea una copia superficial del Objectactual. (Heredado de Object) |
| SaveViewState() |
Guarda el estado de vista actual del DataKey objeto. |
| ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |
| TrackViewState() |
Marca el punto de partida en el que se va a comenzar a realizar el seguimiento y guardar los cambios de estado de vista en el DataKey objeto. |
Implementaciones de interfaz explícitas
| Nombre | Description |
|---|---|
| IStateManager.IsTrackingViewState |
Obtiene un valor que indica si el DataKey objeto está realizando el seguimiento de los cambios de estado de vista. |
| IStateManager.LoadViewState(Object) |
Carga el estado de vista guardado anteriormente del DataKey objeto. |
| IStateManager.SaveViewState() |
Guarda el estado de vista actual del DataKey objeto. |
| IStateManager.TrackViewState() |
Marca el punto de partida en el que se va a comenzar a realizar el seguimiento y guardar los cambios de estado de vista en el DataKey objeto. |