DataKey クラス
アセンブリ: System.Web (system.web.dll 内)
構文
解説DataKey クラスは、データ バインド コントロール内のレコードの主キーを表すために使用されます。レコードの主キーは、データ ソースの 1 つ以上のフィールドで構成できます。DataKey クラスはコレクションではありませんが、キー フィールドの値を複数格納できます。DataKey クラスのコンストラクタの 1 つが呼び出されると、キー フィールドの値が代入されます。DataKey オブジェクトからキー フィールドの値を取得する方法は、次のとおりです。
-
DataKey.Item(Int32) プロパティを使用して、DataKey オブジェクト内の特定のインデックス位置にあるキー フィールドの値を取得します。
-
Value プロパティを使用して、DataKey オブジェクト内のインデックス 0 にあるキー フィールドの値を取得します。このプロパティは、主キーにフィールドが 1 つしかない場合に、レコードのキー値を取得するためのショートカットとして使用されます。
-
Values プロパティを使用して、キー フィールドの値を反復処理するために使用できる IOrderedDictionary オブジェクトを作成します。
通常、DataKey オブジェクトは、データ バインド コントロールの DataKeyNames プロパティが設定されている場合にそのコントロールによって自動生成されます。DataKey オブジェクトには、DataKeyNames プロパティ内で指定された 1 つ以上のキー フィールドの値が格納されます。一度に 1 つのレコードだけを表示するデータ バインド コントロール (DetailsView または FormView など) には、通常、そのコントロールの DataKey プロパティ内に現在表示されているレコードの DataKey オブジェクトが格納されます。一度に複数のレコードを表示するデータ バインド コントロール (GridView など) には、通常、DataKeyArray コレクション内にあるこのコントロールの各レコードの DataKey オブジェクトが格納されます。その後、DataKeyArray コレクションがコントロールの DataKeys プロパティに格納されます。
使用例DataKey オブジェクトの Value プロパティを使用して DetailsView コントロール内のレコードの主キーの値を確認するコード例を次に示します。
<%@ Page language="VB" %> <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 the value of the key field. MessageLabel.Text = "The key field value for the displayed record is " & _ key.Value.ToString() & "." End Sub </script> <html> <body> <form 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>
<%@ Page language="C#" %> <script runat="server"> void CustomerDetailsView_DataBound(Object sender, EventArgs e) { // Get the DataKey object for the current record. DataKey key = CustomerDetailsView.DataKey; // Display the the value of the key field. MessageLabel.Text = "The key field value for the displayed record is " + key.Value.ToString() + "."; } </script> <html> <body> <form 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>
.NET Framework のセキュリティ
継承階層System.Web.UI.WebControls.DataKey
スレッド セーフ
プラットフォームWindows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
バージョン情報
参照DataKey コンストラクタ (IOrderedDictionary, String[])
アセンブリ: System.Web (system.web.dll 内)
構文Dim keyTable As IOrderedDictionary Dim keyNames As String() Dim instance As New DataKey(keyTable, keyNames)
解説このコンストラクタを使用し、キー フィールドの値のディクショナリとフィールド名の配列を指定して DataKey クラスの新しいインスタンスを作成します。keyTable パラメータについて渡される IOrderedDictionary オブジェクトに格納されているフィールド値は、DataKey オブジェクトに代入されます。このコンストラクタでは、keyNames パラメータを使用して、DataKey オブジェクトのキー フィールド名リストをあらかじめ指定することもできます。その場合、フィールド名があらかじめ指定されているので、このコンストラクタが使用されるときだけにキー フィールドの値がビューステートに格納されます。
プラットフォームWindows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
バージョン情報
参照DataKey コンストラクタ
オーバーロードの一覧| 名前 | 説明 |
|---|---|
| DataKey (IOrderedDictionary) | キー フィールドの値のディクショナリを指定して、DataKey クラスの新しいインスタンスを初期化します。 |
| DataKey (IOrderedDictionary, String[]) | キー フィールドの値のディクショナリとフィールド名の配列を指定して、DataKey クラスの新しいインスタンスを初期化します。 |
参照DataKey コンストラクタ (IOrderedDictionary)
アセンブリ: System.Web (system.web.dll 内)
構文
解説このコンストラクタを使用し、キー フィールドの値のディクショナリを指定して DataKey クラスの新しいインスタンスを作成します。keyTable パラメータについて渡される IOrderedDictionary オブジェクトに格納されているフィールド値は、DataKey オブジェクトに代入されます。
メモ |
|---|
| このバージョンのコンストラクタでは、DataKey オブジェクトのフィールド名リストをあらかじめ指定できません。フィールド名があらかじめ指定されていないため、フィールドの名前と値の両方がビューステートに格納されます。フィールド名のリストをあらかじめ指定するには、DataKey(IOrderedDictionary,String[]) コンストラクタを使用します。 |
プラットフォームWindows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
バージョン情報
参照DataKey プロパティ
パブリック プロパティ| 名前 | 説明 | |
|---|---|---|
| Item | オーバーロードされます。 DataKey オブジェクトからキー フィールドの値を取得します。 |
| Value | DataKey オブジェクト内のインデックス 0 にあるキー フィールドの値を取得します。 |
| Values | DataKey オブジェクト内のすべてのキー フィールドに格納されている IOrderedDictionary オブジェクトを取得します。 |
プロテクト プロパティ
明示的インターフェイスの実装| 名前 | 説明 | |
|---|---|---|
| System.Web.UI.IStateManager.IsTrackingViewState | DataKey オブジェクトがビューステートの変更を追跡しているかどうかを示す値を取得します。 |
参照DataKey メソッド
パブリック メソッド| 名前 | 説明 | |
|---|---|---|
| Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 ( Object から継承されます。) |
| GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 ( Object から継承されます。) |
| GetType | 現在のインスタンスの Type を取得します。 ( Object から継承されます。) |
| ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。) |
| ToString | 現在の Object を表す String を返します。 ( Object から継承されます。) |
プロテクト メソッド| 名前 | 説明 | |
|---|---|---|
| Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 ( Object から継承されます。) |
| LoadViewState | 以前に保存した DataKey オブジェクトのビューステートを読み込みます。 |
| MemberwiseClone | 現在の Object の簡易コピーを作成します。 ( Object から継承されます。) |
| SaveViewState | DataKey オブジェクトの現在のビューステートを保存します。 |
| TrackViewState | DataKey オブジェクトに対するビューステートの変更の追跡と保存を始める開始点にマークを付けます。 |
明示的インターフェイスの実装| 名前 | 説明 | |
|---|---|---|
| System.Web.UI.IStateManager.LoadViewState | 以前に保存した DataKey オブジェクトのビューステートを読み込みます。 |
| System.Web.UI.IStateManager.SaveViewState | DataKey オブジェクトの現在のビューステートを保存します。 |
| System.Web.UI.IStateManager.TrackViewState | DataKey オブジェクトに対するビューステートの変更の追跡と保存を始める開始点にマークを付けます。 |
参照DataKey メンバ
データ バインド コントロール内のレコードの 1 つまたは複数の主キー フィールドを表します。
DataKey データ型で公開されるメンバを以下の表に示します。
パブリック コンストラクタ
パブリック プロパティ| 名前 | 説明 | |
|---|---|---|
| Item | オーバーロードされます。 DataKey オブジェクトからキー フィールドの値を取得します。 |
| Value | DataKey オブジェクト内のインデックス 0 にあるキー フィールドの値を取得します。 |
| Values | DataKey オブジェクト内のすべてのキー フィールドに格納されている IOrderedDictionary オブジェクトを取得します。 |
プロテクト プロパティ
パブリック メソッド| 名前 | 説明 | |
|---|---|---|
| Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 (Object から継承されます。) |
| GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 (Object から継承されます。) |
| GetType | 現在のインスタンスの Type を取得します。 (Object から継承されます。) |
| ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。) |
| ToString | 現在の Object を表す String を返します。 (Object から継承されます。) |
プロテクト メソッド| 名前 | 説明 | |
|---|---|---|
| Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 (Object から継承されます。) |
| LoadViewState | 以前に保存した DataKey オブジェクトのビューステートを読み込みます。 |
| MemberwiseClone | 現在の Object の簡易コピーを作成します。 (Object から継承されます。) |
| SaveViewState | DataKey オブジェクトの現在のビューステートを保存します。 |
| TrackViewState | DataKey オブジェクトに対するビューステートの変更の追跡と保存を始める開始点にマークを付けます。 |
明示的インターフェイスの実装| 名前 | 説明 | |
|---|---|---|
| System.Web.UI.IStateManager.LoadViewState | 以前に保存した DataKey オブジェクトのビューステートを読み込みます。 |
| System.Web.UI.IStateManager.SaveViewState | DataKey オブジェクトの現在のビューステートを保存します。 |
| System.Web.UI.IStateManager.TrackViewState | DataKey オブジェクトに対するビューステートの変更の追跡と保存を始める開始点にマークを付けます。 |
| System.Web.UI.IStateManager.IsTrackingViewState | DataKey オブジェクトがビューステートの変更を追跡しているかどうかを示す値を取得します。 |
参照Weblioに収録されているすべての辞書からDataKeyを検索する場合は、下記のリンクをクリックしてください。
全ての辞書からDataKey
を検索
- DataKeyのページへのリンク
.gif)