2009-06-09 15 views
2

私はファイルアップロードアプリケーションを作成しています。そのため、テキストボックスのキー名とファイルアップロード のコントロールが含まれています。保存ボタンは、キー名とファイルを保存するために使用されます。私の問題は、fileuploadコントロールでファイルを選択し、keynameテキストボックスに任意の値を入力せずに保存ボタンをクリックすると、「キーイングを入力してください」というメッセージが表示されますが、fileuploadコントロールはクリアされます。ファイルアップロードコントロールの値をどのように保持できますか?ファイルアップロードコントロールの値を保持

答えて

4

FileUploadコントロールでは値を保持できません。これはセキュリティ上の理由によるものです。 keynameテキストボックスにはRequiredFieldValidatorを使用できます。

+0

MSDNで理由を参照してください。 – Sauron

+0

これら2つは役に立ちます: http://www.csharpuniversity.com/2009/03/05/uploading-files-and-validating-them-using-the-aspnet-fileupload-and-customvalidator-controls/ http ://forums.asp.net/p/1155617/1896657.aspx – Kashif

2

セキュリティ上の理由から、FileUploadコントロールに値を割り当てることはできません。

もし可能であれば、個人情報を持つ既知のシステムファイルへのパスをデフォルトで入れることができます。その後、ページ上のコントロールを非表示にして、ユーザに何らかの理由でページを送信させ、知らないうちにファイルを自動ダウンロードさせます。ちょうどそれがなかったら、それを悪用するので、多くの方法があるだろうので

ファイルアップロードコントロールは非常にロックダウンされています。

ポストバックを実行して、キー名が入力されているかどうかを確認していないとお考えですか?キー値が入力されていない場合は、javascriptによるチェックを行い、メッセージの表示を中止/表示します。ポストバックは値をクリアしているので、ポストバックが起こらないようにすると、ポストバックの問題の後にファイルアップロードのクリアを回避できないので、問題はなくなります。

+0

MSDNで理由を参照してください。 – Sauron

関連する問題