2012-04-05 7 views
0

私はASHXを使ってユーザーの製品イメージをアップロードしました。アップロードしたファイル名をセッション["up_pro_image"]に保存します。私はセッションの値を読み取り、ファイルを操作して提出します。しかし、彼が2ページを開いて両方の製品を追加した場合、セッションから1つのファイル名が失われてしまいます。これを解決するには?2つのブラウザと異なるセッションで同じページ - ASHX

答えて

0

セッションに保存する代わりに、イベントをデータベースに書き出すことができます。各ファイルには、 "IsProcessed"というフラグが付いています。あなたのコードでは、未処理のすべてのファイルをdbに問い合わせて処理し、データベースにフラグを設定することができます。

+0

私の見解では、ほとんど同じです。彼が2つのページを開いている場合は、2つのファイルを受信するとアップロードがうまくいかないが、どのファイルが切り替えページ用であるかわからない(ブラウザタブとしてページする)。 –

+0

データポイントを紛失していないことを除いて、ほぼ同じです!同じセッションにいる限り、どのタブがファイルを送信しても気にしないようにアプリケーションを調整できませんか? – mgnoonan

+0

あなたは私のポイントを持っているかどうかわからないが、今はもっと説明していない。 あなたは私のユーザーと一緒にログインしており、私もまた私のユーザーと一緒にログインしています。 「AddProduct.aspx」をクリックし、そのページをクリックするとします。 ファイルをアップロードしますが、ファイルもアップロードします。 保存をクリックすると、whitchファイルはあなたのためですか? これは隠しフィールドにASHXレスポンスを保存し、そのGUIDを持つファイルが存在するかどうかなどを確認することで行うことができますが、それ以上の安全な方法はありますか? –

関連する問題