既存のユーザーコントロールを読み込むSharePoint 2007のカスタムWebパーツを作成しました。ユーザーが制御することの1つは、FTPを介したファイルの非同期アップロードです。私は非同期ファイル転送のためのBeginUpload/EndUploadメソッドを持つサードパーティのFTPライブラリを使用しています。また、ユーザーコントロールには、FTPライブラリによって生成されたイベントに基づいて、転送されたバイト数の合計を表示するための更新パネルがあります。必要なすべてのAJAX設定をweb.configに追加しました。SharePoint Webパーツの非同期スレッドが終了する
別のプロジェクトからユーザーコントロールを単独で実行すると、すべてがうまくいきます。しかし、私がコントロールをホストしているWebパーツにアクセスしてアップロードを試みると、FTPライブラリは約64KBを転送し、次にそれが実行されているスレッドは停止します。
スレッド 'Win32 Thread'(0xf34)がコード0(0x0)で終了しました。
これらのうちのいくつかが発生し、FTPライブラリが例外をスローすると(基本的にタイムアウトになります)、IISワーカープロセスが暴走し、すべてが停止します。この仕事をするためにSharePointの設定やWebパーツで何か特別なことがありますか? SPが外れている場合、同じコードがうまく機能するので、SharePointに関するものと思われます。