- PR -

ASP.NETでのファイルアップロード時のファイル存在チェック

1
投稿者投稿内容
KENT
会議室デビュー日: 2006/10/03
投稿数: 7
投稿日時: 2006-10-10 01:23
ASP.NETで開発しております。

ファイルのアップロードを行うため、
<form id="Form1" method="post" runat="server" enctype="multipart/form-data">
<P>送信するファイルを指定して、[送信]ボタンを押してください。</P>
<P><INPUT type="file" name="userfile"></P>
<P>
<asp:Button id="Button1" runat="server" Text="送信" />
</P>
</form>

という感じでコーディングしましたが、このとき同一ファイル名が存在したら
確認メッセージ(メッセージボックスで(OK・キャンセル))を表示したいと
思っています。

この場合、サーバ側でファイルをチェックするのは可能ですが、
クライアント側でメッセージを表示するためにはどのようにすべきなのでしょうか。
どなたかアドバイスをいただけませんでしょうか。
どっとねっとふぁん
ぬし
会議室デビュー日: 2005/02/23
投稿数: 935
投稿日時: 2006-10-10 03:50
サーバ上でしかチェックできないと思います。
できるとして、AJAX的な実装を行ってバックエンドで通信を行い、サーバ上での
チェック結果から確認メッセージを表示させる、といった形ぐらいでしょうか。
choir
会議室デビュー日: 2006/07/31
投稿数: 15
お住まい・勤務地: 東京都
投稿日時: 2006-10-10 03:58
確認ダイアログを使用するという前提だと↓のような感じかなと。。
a) RegisterStartupScriptを使用する。
http://www.atmarkit.co.jp/fdotnet/dotnettips/160regscript/regscript.html
b) クライアントコールバックを使用する。
http://msdn2.microsoft.com/ja-jp/library/ms178208.aspx

aは同期処理でポストバック有、
bは非同期処理でポストバック無し。
一長一短なので、要件に合わせてお好きな方法で。

#この前引き継いだソースはMsgBoxが使われていて泣きそうになった…
どっとねっとふぁん
ぬし
会議室デビュー日: 2005/02/23
投稿数: 935
投稿日時: 2006-10-10 10:56
aだとポップアップブロックにひっかかりませんか?
まあ、社内のシステムとかなら設定について周知すればいいだけだろうけど。
choir
会議室デビュー日: 2006/07/31
投稿数: 15
お住まい・勤務地: 東京都
投稿日時: 2006-10-10 12:45
確かに、新しいウィンドウを開くならポップアップブロックにぶつかるけど
confirmでダイアログを出す分には問題ないような。
KENT
会議室デビュー日: 2006/10/03
投稿数: 7
投稿日時: 2006-10-10 13:14
どっとねっとふぁんさん、ありがとうございます。

やはり単純にはできないみたいですね。。。
AJAXで実装というのは今回考えていないため
他の方法でなんとかしたいと思います。

できる、できないという判断もつかなかったため
大変参考になりました。ありがとうございました。
KENT
会議室デビュー日: 2006/10/03
投稿数: 7
投稿日時: 2006-10-10 13:15
choirさん、ありがとうございます。

まだ実装できていませんがやってみます!
とても勉強になります。ありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)