繁体   English   中英

.NET中的FileUpload不保存图像

[英]FileUpload in .NET not saving image

这是我的代码

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

由于某种原因,图像无法保存。.如果我调试代码,并在Quickwatch中获取URL,则文件夹将打开,因此路径是正确的,但不会保存! 我刚刚设置了权限,因为我认为是因为这个原因,但无济于事! 我不知道这里出了什么问题,我错过了什么?

多谢你们

查看msdn示例 您需要使用FileUpload控件属性来检查FileUpload控件是否具有文件,然后使用PostFile属性获取文件名。

尝试这个:

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

我不确定您的视图状态如何,但是至少这就是为什么在调试时更容易验证路径的原因。

您是否验证了personalPhotoUpload.C​​ontentLength()> 0?

如果不是,那是你的问题。 如果您的文件字节为零,则没有上传的文件。

摘自文档页面:

FileUpload控件不会自动从客户端读取文件。 您必须明确提供控件或机制以允许用户提交指定的文件。 例如,您可以提供一个按钮,用户可以单击该按钮来上传文件。 您编写的用于保存指定文件的代码可以调用FileBytes属性,该属性返回文件的内容。

在调用FileBytes属性之前,应该使用HasFile属性来验证FileUpload控件是否包含要上传的文件。 如果HasFile返回true,则调用FileBytes属性。 如果返回false,则向用户显示一条消息,指示该控件不包含文件。 如果不提供错误处理代码来验证文件是否存在,则尝试保存不存在的文件将引发HttpException异常。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM