0

私はC#のアプリケーションと、それで使用するSQLデータベースを持っています(挿入、更新、ダウンロードなど)。私の主な問題は、SQL データベースからファイル (pdf ファイルなど) をダウンロード/アップロードしようとすると、ファイルが十分に大きいか、インターネットの速度が速くないため、プログラムが動かなくなることです。つまり、そのファイルのアップ/ダウンロードに時間がかかりすぎて、それが完了するまで「何も起こらない」ということです。プログレスバーなどを表示して、ダウンロードが進行中であることを示し、そのステータスを表示したいだけです。

詳細:列「fileok」は画像ファイルタイプです

次のように、その列から保存されたファイルをダウンロードしようとしています。

dbbyte = (byte[])adattabla2.Rows[0]["fileok"];

次のようにファイルをデータベースにアップロードします。

sqlcmd.Parameters.AddWithValue("@FF", FileBytes);

保存されたファイルを取得/アップロードしますが、この大きなファイルまたはネットが遅い場合はしばらく時間がかかり、「フリーズ」のように完了するまで時間がかかります。完了すると、プログラムが続行されます。プログラムが動作しているので、ダウンロード中であることをユーザーに通知し、ステータスを表示する必要があります。どうすればよいですか? URL、リンクを使用したダウンロードのみに役立つものは見つかりませんでしたが、このようなデータベースには役立ちませんでした。

私はあなたの助けに感謝します!

4

1 に答える 1

1

を使用しBackgroundWorkerて、ここここProgressBarを参照してください

于 2012-12-04T12:56:50.920 に答える