2007年8月18日土曜日

ASP.NET GridViewで一覧表示 ~ObjectDataSource(DataSet)~

GridViewで一覧表示 ~ObjectDataSource(DataReader)~ のCompanyクラスを以下のように修正します。
CompanyクラスのGetCompanyDataメソッドの戻り値をDataSetにします。
Imports Microsoft.VisualBasic

Imports System.Data

Imports System.Data.Common

Imports System.ComponentModel




''' <summary>

''' 会社クラスです。

''' </summary>

''' <remarks></remarks>

Public Class Company

    ''' <summary>

    ''' 会社データを取得します。

    ''' </summary>

    ''' <returns></returns>

    ''' <remarks></remarks>

    <DataObjectMethod(DataObjectMethodType.SelectTrue)> _

    Public Shared Function GetCompanyData() As DataSet

        'App.configより接続文字列を取得します。

        Dim setting As ConnectionStringSettings

        setting = ConfigurationManager.ConnectionStrings("ConnectionString")

        'ファクトリーオブジェクトを作成します。

        Dim factory As DbProviderFactory

        factory = DbProviderFactories.GetFactory(setting.ProviderName)

        'コネクションオブジェクトを作成します。

        Dim cnn As DbConnection

        cnn = factory.CreateConnection

        cnn.ConnectionString = setting.ConnectionString

        'SQLを作成します。

        Dim sql As String

        sql = "SELECT [CompanyID],[CompanyName],[CompanyKana] From [tblCompany]"

        'コマンドオブジェクトを作成します。

        Dim cmd As DbCommand

        cmd = factory.CreateCommand

        cmd.Connection = cnn

        cmd.CommandText = sql

        'アダプターオブジェクトを作成します。

        Dim adp As DbDataAdapter

        adp = factory.CreateDataAdapter

        adp.SelectCommand = cmd

        'データテーブルを作成します。

        Dim ds As New DataSet

        adp.Fill(ds)

        Return ds

    End Function




End Class


■並べ替え機能を有効にします。
GridViewコントロールのスマートタグより「並べ替えを有効にする」チェックボックスをチェックオンにします。「列の編集」をクリックしフィールドダイアログボックスを起動します。各フィールドの「SortExpression」プロパティを指定します。
「会社ID」フィールドの「SortExpression」プロパティに「CompanyID」を指定します。
「会社名」フィールドの「SortExpression」プロパティに「CompanyName」を指定します。
「会社名カナ」フィールドの「SortExpression」プロパティに「CompanyKana」を指定します。



■ページング機能を有効にします。
GridViewコントロールのスマートタグより「ページングを有効にする」チェックボックスをチェックオンにします。
表示する行数はGridViewコントロールのPageSizeプロパティで設定できます。

■実行して確認します。

0 件のコメント: