●
DataViewのレコードを検索してDataRowViewの配列を取得するサンプル

図 DataViewのレコードを検索してDataRowViewの配列を取得するサンプル
このサンプルは、DataViewを特定のカラムで検索して複数のレコードを取得します。特定のカラムで検索するには、DataViewのSortプロパティにカラムを設定して並べ替えします。複数のレコードを検索するには、DataViewのFindRo
このサンプルでは、以下のノウハウを習得することができます。
▲ 得意先テーブルをDataTableに取り込む方法
▲ DataTableからDataViewを作成する方法
▲ DataViewを特定のカラムで検索して複数のレコードを取得する方法
▲ 検索したレコード件数を取得する方法
サンプルのPage_Load()イベントでは、DataViewを特定のカラムで検索して複数のレコードを取得します。行8-9では、得意先テーブルからレコードを抽出するSQLを生成しています。行10-13では、OleDbConnection、OleDbDataAdapter、DataTableを生成しています。
行15では、OleDbDataAdapterのFill()メソッドで得意先テーブルをDataTableに取り込んでいます。行16では、DataTableからDataViewを生成しています。行17では、DataViewのSortプロパティにKenを設定して得意先を都道府県の昇順に並べ替えています。行18では、DataViewのFindRo
Response.Write(String.Format(“レコード件数{0}”, arrRo
行21-23のFor Each…Nextでは、arrRo
7: Sub Page_Load()
8: Dim strSQL As String =
"Select CustomerID, CompanyName, " & _
9: "ContactName,
Phone, Ken From Customers"
10: Dim con As New OleDbConnection( _
11:
ConfigurationSettings.AppSettings("conStringNw"))
12: Dim da As New
OleDbDataAdapter(strSQL, con)
13: Dim dt As New
DataTable("Customers")
14:
15: da.Fill(dt)
16: Dim dv As New DataView(dt)
17: dv.Sort = "Ken"
18: Dim arrRo
19:
Response.Write("<h2>DataView.FindRo
20: Dim drv As DataRowView
21: For Each drv In arrRo
22: DisplayRow(drv)
23: Next
24: End Sub