- - PR -
一時的な画像ファイルの格納場所について
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2007-10-02 22:17
連続の質問、失礼します。
クライアントからアップロードされた一時的な画像ファイルの格納場所が分からなくて困っています。 クライアント側で画像ファイルをアップロードしたら、サーバーの一時的なエリアに格納し、 クライアントにプレビューとして表示させたいのですが、その際の一時ファイルはどこに格納するのがよいのでしょうか? 今、「Path.GetTempFileName」で得られたファイル名でサーバーのテンポラリエリアに格納しようとしたのですが、 セキュリティ上の問題かうまくいきませんでした。 この画像ファイルは一時的なものなので、ユーザーが処理を中断したら削除しなければなりません。 こういったファイルもWebサイト以下に格納するものなのでしょうか? ご教示下さい。 <環境> Windows Server 2003, Visual Studio 2005 SP1 (C#), .NET Framework 2.0 | ||||||||
|
投稿日時: 2007-10-02 23:49
@ITのサイトに
「[ASP.NET]ブラウザからファイルをアップロードできるようにするには?」 http://www.atmarkit.co.jp/fdotnet/dotnettips/321uploadform/uploadform.html というページがありますので、ご参照されみてはいかがでしょうか。 | ||||||||
|
投稿日時: 2007-10-02 23:55
認証はどのような方式を使用していますか?
_________________ | ||||||||
|
投稿日時: 2007-10-03 09:33
IIJIMASさん、レスありがとうございます。
サイト、参照させていただきました。 ストリームを使用すればテンポラリエリアに保存しなくてもクライアントに画像を表示できるようですが、 1つ気になった点があるので追加で質問させて下さい。 ストリームで読み出し後にそれをファイルとして保存した場合、アップロードされたファイルと全く同じものとなるのでしょうか? クライアントでアップロード後に登録処理が実行された場合には、その画像を他の画面で使用するためファイル形式で保存したいのです。 ちなみに、データベースの構成は変更できないため、ファイルをデータベースに格納することはできません。 ご教示下さい。 | ||||||||
|
投稿日時: 2007-10-03 09:35
ちゃっぴさん、レスありがとうございます。
フォーム認証を使用しています。 | ||||||||
|
投稿日時: 2007-10-03 09:54
普通に、同じになると思いますが… なぜ、気になったのでしょうか…。 | ||||||||
|
投稿日時: 2007-10-03 10:04
IIJIMASさん、再度のレスありがとうございます。
そうですよね 普通に考えれば同じになりますよね。 ストリームで読み出した後、ファイルを再構築する際にデータの欠落などが起こらないか心配だったもので。 (ストリームをいまいち理解していません・・・) ありがとうございました。 ちなみに手順的には以下のようになるのでしょうか? 1.ファイルアップロード 2.ストリームで読み出し 3.画像表示用ページで画像データを出力 http://www.microsoft.com/japan/msdn/asp.net/tips/DataBaseImage2/ 4.プレビュー画面のImageオブジェクトのImageUrlに「3.」のページを指定 | ||||||||
|
投稿日時: 2007-10-03 10:19
それでよいと思いますが… わざわざ、掲示板で質問する理由がよくわかりません… まずはVisual Studio 2005が手元にあるなら実際にやってみてください。 そこで何か問題・疑問がおきたとき、MSDNライブラリや検索やTipsサイトで調べていろいろ試行錯誤して、どうしてもわからないなら、掲示板に質問を投稿してください。 その際、最初の投稿で問題の環境や状況(どこまでは自分で調べたとか)、再現手順などをできるだけ具体的に書くと適切な回答が早くつきやすいと思います。 |