- - PR -
SqlDataSourceのバインドタイミングについて
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2006-12-27 13:43
VisualWebDeveloper2005(VB.NET)でサイト作成を行っています。
ある表から複数行のレコードを取得して表形式に表示するプログラムを作成しています。 DataListコントロールにSqlDataSourceをバインドさせているのですが、表示する条件としてランダムに5件表示したいのですが、方法が分かりません。 SQLでどうにかなるかと、調べてみたのですが(SQL Server2003を使用)、糸口が見つけられないので、コード側でDataSourceを加工しようと思っています。 ちょっとSqlDataSourceというものを、まだキチンと理解していないかも知れませんが、 SqlDataSource内にある?DataTableをVB.NETの乱数関数で対象ROWを抽出して、新たなDataTableを作成してSqlDataSourceに戻す?ような事をすれば良いのかと思っています。 ちょっと例えは違うかもしれませんが、DataList内のラベルコントロールなどに Text='<%#Eval("comment") %>' をcommnetを指定のフォーマットに変換する関数を作成して以下のような事を行っています。 Text='<%#CnvText(DataBinder.Eval(Container.DataItem,"comment")) %>' SqlDataSourceに対して行えればと思うのですが・・・ どうも説明が分かりづらいですが・・・ よろしくお願いします。 |
|
投稿日時: 2006-12-27 14:04
SqlDataSourceの内部のデータに触るためのプロパティとかはなさそうですね。
一度取り出したデータからランダムに情報を抽出して返すクラスをつくって、 ObjectDataSourceでバインドするというのはどうでしょうか。 |
|
投稿日時: 2006-12-27 21:14
どのようなデータなのかわからないのに、こんなことを言うのはなんだけど。
ランダムに表示されたら、イヤだと思う。 _________________ |
1