DataKey DataKey DataKey DataKey Class

定義

データ バインド コントロール内のレコードの 1 つまたは複数の主キー フィールドを表します。Represents the primary key field or fields of a record in a data-bound control.

public ref class DataKey : IEquatable<System::Web::UI::WebControls::DataKey ^>, System::Web::UI::IStateManager
public class DataKey : IEquatable<System.Web.UI.WebControls.DataKey>, System.Web.UI.IStateManager
type DataKey = class
    interface IStateManager
    interface IEquatable<DataKey>
Public Class DataKey
Implements IEquatable(Of DataKey), IStateManager
継承
DataKeyDataKeyDataKeyDataKey
実装

次のコード例は、 DetailsView DataKeyオブジェクトのValueプロパティを使用して、コントロール内のレコードの主キー値を確認する方法を示しています。The following code example demonstrates how to determine the primary key value of a record in a DetailsView control using the Value property of a DataKey object.


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

注釈

DataKeyクラスは、データバインドコントロール内のレコードの主キーを表すために使用されます。The DataKey class is used to represent the primary key for a record in a data-bound control. レコードの主キーは、データソースの1つ以上のフィールドで構成できます。The primary key for a record can be composed of one of more fields from the data source. DataKeyクラスはコレクションではありませんが、複数のキーフィールド値を格納することができます。Although the DataKey class is not a collection, it can store multiple key field values. DataKeyクラスのコンストラクターの1つが呼び出されると、キーフィールドの値が設定されます。The key field values are populated when one of the constructors for the DataKey class is called. DataKeyオブジェクトからキーフィールド値を取得するには、次の方法があります。You can retrieve a key field value from a DataKey object in the following ways:

  • プロパティを使用して、 DataKeyオブジェクト内の特定のインデックス位置にあるキーフィールド値を取得します。 DataKey.Item[Int32]Use the DataKey.Item[Int32] property to retrieve a key field value at a specific index in the DataKey object.

  • 特定のDataKey.Item[String]フィールドのキーフィールド値を取得するには、プロパティを使用します。Use the DataKey.Item[String] property to retrieve a key field value of a specific field.

  • プロパティを使用して、 DataKeyオブジェクトのインデックス0にあるキーフィールドの値を取得します。 ValueUse the Value property to retrieve the value of the key field at index 0 in the DataKey object. このプロパティは、主キーに1つのフィールドしか含まれていない場合に、レコードのキー値を取得するショートカットとしてよく使用されます。This property is often used as a shortcut to retrieve the key value of a record when the primary key contains only one field.

  • プロパティを使用して、 IOrderedDictionaryキーフィールド値を反復処理するために使用できるオブジェクトを作成します。 ValuesUse the Values property to create an IOrderedDictionary object that can be used to iterate through the key field values.

一般に、 DataKeyオブジェクトは、コントロールのDataKeyNamesプロパティが設定されている場合に、データバインドコントロールによって自動的に生成されます。In general, DataKey objects are automatically generated by data-bound controls when the control's DataKeyNames property is set. オブジェクトには、 DataKeyNamesプロパティで指定されたキーフィールドの値が含まれます。 DataKeyThe DataKey objects contain the values of the key field or fields specified in the DataKeyNames property. DetailsViewまたはFormViewなど、一度に1つのレコードを表示するデータバインドコントロールは、通常、 DataKeyコントロールのDataKeyプロパティに表示されている現在のレコードのオブジェクトを格納します。Data-bound controls that display a single record at a time (such as DetailsView or FormView) generally store the DataKey object for the current record displayed in the DataKey property of the control. 複数のレコードを同時に表示するデータバインドコントロール ( GridViewなど) は、通常、 DataKey DataKeyArrayコレクション内のコントロールの各レコードのオブジェクトを格納します。Data-bound controls that display multiple records at a time (such as GridView) generally store the DataKey objects for each record in the control in a DataKeyArray collection. そのDataKeyArray後、コレクションはコントロールのDataKeysプロパティに格納されます。The DataKeyArray collection is then stored in the DataKeys property of the control.

コンストラクター

DataKey(IOrderedDictionary) DataKey(IOrderedDictionary) DataKey(IOrderedDictionary) DataKey(IOrderedDictionary)

キー フィールドの値のディクショナリを指定して、DataKey クラスの新しいインスタンスを初期化します。Initializes a new instance of the DataKey class using the specified dictionary of key field values.

DataKey(IOrderedDictionary, String[]) DataKey(IOrderedDictionary, String[]) DataKey(IOrderedDictionary, String[]) DataKey(IOrderedDictionary, String[])

キー フィールドの値のディクショナリとフィールド名の配列を指定して、DataKey クラスの新しいインスタンスを初期化します。Initializes a new instance of the DataKey class using the specified dictionary of key field values and array of field names.

プロパティ

IsTrackingViewState IsTrackingViewState IsTrackingViewState IsTrackingViewState

DataKey オブジェクトがビューステートの変更を追跡しているかどうかを示す値を取得します。Gets a value indicating whether the DataKey object is tracking its view-state changes.

Item[Int32] Item[Int32] Item[Int32] Item[Int32]

DataKey オブジェクト内の指定したインデックス位置にあるキー フィールドの値を取得します。Gets the value of the key field at the specified index from a DataKey object.

Item[String] Item[String] Item[String] Item[String]

指定したフィールド名を持つキー フィールドの値を DataKey オブジェクトから取得します。Gets the value of the key field with the specified field name from a DataKey object.

Value Value Value Value

DataKey オブジェクト内のインデックス 0 にあるキー フィールドの値を取得します。Gets the value of the key field at index 0 in the DataKey object.

Values Values Values Values

IOrderedDictionary オブジェクト内のすべてのキー フィールドに格納されている DataKey オブジェクトを取得します。Gets an IOrderedDictionary object that contains every key field in the DataKey object.

メソッド

Equals(DataKey) Equals(DataKey) Equals(DataKey) Equals(DataKey)

指定した DataKey 配列が、現在のデータ キーと等しいかどうかを判断します。Determines whether the specified DataKey array is equal to the current data key.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

指定したオブジェクトが、現在のオブジェクトと等しいかどうかを判断します。Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(Inherited from Object)
LoadViewState(Object) LoadViewState(Object) LoadViewState(Object) LoadViewState(Object)

以前に保存した DataKey オブジェクトのビューステートを読み込みます。Loads the previously saved view state of the DataKey object.

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(Inherited from Object)
SaveViewState() SaveViewState() SaveViewState() SaveViewState()

DataKey オブジェクトの現在のビューステートを保存します。Saves the current view state of the DataKey object.

ToString() ToString() ToString() ToString()

現在のオブジェクトを表す文字列を返します。Returns a string that represents the current object.

(Inherited from Object)
TrackViewState() TrackViewState() TrackViewState() TrackViewState()

DataKey オブジェクトに対するビューステートの変更の追跡と保存を始める開始点にマークを付けます。Marks the starting point at which to begin tracking and saving view-state changes to the DataKey object.

明示的なインターフェイスの実装

IStateManager.IsTrackingViewState IStateManager.IsTrackingViewState IStateManager.IsTrackingViewState IStateManager.IsTrackingViewState

DataKey オブジェクトがビューステートの変更を追跡しているかどうかを示す値を取得します。Gets a value indicating whether the DataKey object is tracking its view-state changes.

IStateManager.LoadViewState(Object) IStateManager.LoadViewState(Object) IStateManager.LoadViewState(Object) IStateManager.LoadViewState(Object)

以前に保存した DataKey オブジェクトのビューステートを読み込みます。Loads the previously saved view state of the DataKey object.

IStateManager.SaveViewState() IStateManager.SaveViewState() IStateManager.SaveViewState() IStateManager.SaveViewState()

DataKey オブジェクトの現在のビューステートを保存します。Saves the current view state of the DataKey object.

IStateManager.TrackViewState() IStateManager.TrackViewState() IStateManager.TrackViewState() IStateManager.TrackViewState()

DataKey オブジェクトに対するビューステートの変更の追跡と保存を始める開始点にマークを付けます。Marks the starting point at which to begin tracking and saving view-state changes to the DataKey object.

適用対象

こちらもご覧ください