2011-08-02 9 views
2

Oracleデータベースを呼び出して特定のホテルに空きがあるかどうかを確認するスレッドを開始する操作(変更できません)があります。特定の日付。Webサービス/ jqueryを使用して返されたデータを表示する必要があります

日付/ホテルの組み合わせに空きがある場合、そのスレッドは結果のメインデータテーブルにマージされたDataTableの形式で日付/ホテルに関する情報を返します。はい、私は知っています...私はこれを継承しました。

この操作を書き直そうとしています。可用性情報を取得するためにスレッド内のOracleに依頼する必要がありますが、ユーザーが画面の前に座るのではなく、返されるデータを表示する必要があります(5,10のチャンクで柔軟性があります)。完全な結果がGridViewに出力されるまでに最大4分かかります。

Webサービスコールを行い、グリッド(JqGrid?)に結果を設定できるように、これを.aspxページから直接行う方法

私が十分な情報を提供していないか、達成しようとしていることが記述されている場合は、私に知らせてください。

答えて

2

Oracleは送信、クエリを送信し、初めて「ROWID」 (http://www.adp-gmbh.ch/ora/concepts/rowid.html)と呼ばれる各行のフィールド

を提供あなたが望む最高のrownumberが何であるかを定義するint(x)。サービスに行の総数と最初のx行を戻します。

次に、2回目にクエリを送信し、次のx行を取得し、すすぎ、繰り返します。

基本的には、xからyまでのすべての行がロードされるまで、xからyまでの行についてajaxクエリを送信する必要があります。

ユーザーは通常、一度に何百もの結果を表示したくないので、ページングもお勧めします。

+0

残念ながら、私は現在変更できないOracleストアドプロシージャを呼び出しているので、ROWIDを戻すことはできません。しかし、Oracleコールを実行するスレッドは、あなたが記述したようにチャンクされています。各スレッドは1行しか返すことができませんが、それは私が処理しなければならないものです。だから、これらのスレッドを一度に動かす代わりに、それらをグループに分けることができます。しかし、私は何を返すのですか?オブジェクトの配列ですか?そして、私がWebサービスにアイテムを返すよう呼びかけている間に、結果をjqgridのようなものにどのように追加するのですか?サンプルコードとリンクは素晴らしいです、これは私の最初の試みです – TheGeekYouNeed

+0

このようなものです。私はいくつかのjavascriptを知っていますが、それは私の特権ではありません。 – TheGeekYouNeed

+0

何が返されますが、このようになりますJSON、次のとおりです。 [ {myPropertyに: "バリュー"、anotherProperty:1234}、 {myPropertyに: "バリュー"、anotherProperty:2343} ] は、角括弧は配列を表します各オブジェクトは中括弧で囲まれています。しかし、これを手動で構築したくない場合は、.NETが提供するDataContractJSONSerializerを使用してください。 JavaScriptの最後では、JSON.parseを使用して文字列を実際のJavascriptオブジェクト(Javascript Object Notation = JSON)に変換します。 –

関連する問題