0

ASP ページに FileUpload コントロールがあります。ディスクからファイルを選択すると、テキスト ボックスにフル パスが表示さC:\users\star\one.jpgれます。

<asp:FileUpload ID="filUpload1" runat="server" /> 

次に、ボタンをクリックして検証を行いました。そのボタン クリック イベントの結果として、ページの更新が発生します。そして、制御時にそのファイルパスをクリアします。

ページの更新後に FileUpload のフル パスを表示するにはどうすればよいですか?

ViewState を試しましたが、フルパス自体を保存することはできません。私を助けてください。

4

2 に答える 2

1

このリンクに興味深い記事があります

http://www.ironspeed.com/articles/Maintain%20File%20Upload%20Control/Article.aspx

于 2012-08-01T08:02:47.440 に答える
1

これは不可能です。

Asp.net は、html フォームを使用してデータを送信します。ブラウザーのセキュリティ上の制約とユーザーのプライバシーの問題により、フル パスはサーバーに送信されません。

ただし、発生する次のポストバックでは、完全なファイルがサーバーにアップロードされます。

FileUpload コントロールを使用すると、ファイルのコンテンツは、ユーザーがファイルを選択した後の最初のポストバックでのみ利用できます。

その時点でこのファイルを保存し、ViewState (サーバー上のファイルを保存した場所) にメモしておく必要があります。

最終送信が発生すると、サーバーに既にアップロードされているファイルを使用できます。

于 2012-08-01T08:04:10.410 に答える