2009-04-15 4 views
1

.NETアプリケーションからそのユーザーにDB呼び出しの進行状況を報告するための試行錯誤メソッドがあるのだろうかと思います。実際に完了のパーセンテージを示すことが可能かどうか、あるいは何かが起こっていることを示す「読み込み中の」アニメーションを単に表示するための最良の/唯一のアプローチですか?.NetからのSQL呼び出しの進捗バー

また、SQL2008はこれを誰にも知られていますか?

答えて

1

確定的にロードする必要があります。

が -report状態をそれらの500を-get すべてのレコードの数を-get:あなたは、たとえば、大量のデータをフェッチすることがありますを知ってたとえば、次のような何かをするかもしれません1000 /合計% として500 /総% -get 500の以上 -report状態-...あなたがそれらをユーザーのすべてを得ているまで継続

をキャンセルしましたこれはとり何かに信じられないほど無駄だろうデータベースに行くという単なる事実はオーバーヘッドの大部分であるため、時間は全くありません。

1

私が知る限り、これを行う方法はありません。私の提案は、永遠に回転する円形のプログレスバーを使用することです。マイクロソフトでは、SQLとProjectのデータベース操作でこれらを使用しています。ここで

は、これらの様々なていCodeProjectの記事です:

http://www.codeproject.com/KB/vb/sql2005circularprogress.aspx?fid=324397&df=90&mpp=25&noise=3&sort=Position&view=Quick&select=2205952

アダムBerent

0

リモート呼び出し元にメッセージを送り返すためにノーウェイトオプションでRAISERRORを使用することができますSQLトランザクションを終了することなく。もちろん、これは通常のtry/catchの規則を破るので、注意が必要です。

一方、「dbコール」はリストアまたはバックアップ操作を参照することもできます。この場合、SMO(サーバー管理オブジェクト)ライブラリでprogressイベントを使用するだけで済みます。

さらに、LinqなどのORMソリューションを使用して、バッチ更新操作などの「db呼び出し」を処理できます。そうであれば、この答えは役に立ちます: How can I get a percentage of LINQ to SQL submitchanges?

関連する問題