2009-09-03 7 views
0

を保存していない私は、コードをデバッグし、[クイックウォッチ]でURLを取得する場合、フォルダが開きます。..画像が保存されていないいくつかの理由のために私のコードのFileUploadは、ここでは画像

Dim amPhotoPath As String = "\graphics\Profiles\" & ViewState("fileName") 
personalPhotoUpload.SaveAs(Server.MapPath("~") & amPhotoPath) 

なのでパス正しいですが、それは単に保存しません!私はアクセス許可を設定しました。なぜなら、それはその理由だと思ったからですが、無駄なものでした!私は何がここで間違っているのか分からない、何かが足りない?

みんなありがとう

+0

ビューステートはイメージ名です。 –

+0

例外が発生するか、イメージがまったく保存されませんか? ViewState( "fileName")の値をデバッグするとき –

+0

viewstateには実際のイメージ名がありますが、nullでないか、問題を引き起こすものではありません。 これはまったくエラーを出力しません...保存するだけです:s –

答えて

1

チェックアウトmsdn example。 FileUploadコントロールのプロパティを使用して、FileUploadコントロールにファイルがあるかどうかを確認し、PostedFileプロパティを使用してファイル名を取得する必要があります。

+0

+1良いアイデアは、最初の標準的な例に従ってください。 –

0

はこれを試してみてください:

Dim amPhotoPath As String = Path.Combine(Server.MapPath("/graphics/Profiles"), ViewState("filename")) 
personalPhotoUpload.SaveAs(amPhotoPath) 

私はあなたのビューステートに持っていたかわからないんだけど、少なくとも、このなぜデバッグ中に、あなたのパスを確認しやすくなります。

0

personalPhotoUpload.C​​ontentLength()> 0が確認されましたか?

そうでない場合は、それが問題です。 filebytesが0の場合、アップロードされたファイルはありません。 FileUploadコントロールが自動的に クライアントからファイルを読み取れません

thisドキュメントページから抽出しました。 コントロールまたはメカニズムを明示的に指定して、ユーザー が指定されたファイルを送信できるようにする必要があります。 の例では、ユーザーがファイルをアップロードするためにクリックすることができる というボタンを指定できます。 指定したファイル を保存するために書き込むコードでは、ファイルの の内容を返すFileBytesプロパティ を呼び出すことができます。 FileBytesプロパティを呼び出す前に

、 あなたはのFileUploadコントロール は、アップロードするファイルが含まれていることを確認 にHasFileプロパティを使用する必要があります。 HasFileがtrueを返す場合は、 FileBytesプロパティを呼び出します。 falseを返した場合は、ユーザーに というメッセージが表示され、コントロールにファイルが含まれていないことが示されます( )。 エラー処理コードを提供して ファイルが存在することを確認しない場合、 存在しないファイルを保存しようとすると、 HttpException例外がスローされます。

+0

fileuploadのfilebytesは0です...それはどういう意味ですか? –

関連する問題