我有一个FileUpload
控件(并且它不在UpdatePanel
中),它的hasFile
属性总是False
。FileUpload.hasFile始终是False
<asp:FileUpload ID="certificateUploader" runat="server"/>
有没有想法?
我有一个FileUpload
控件(并且它不在UpdatePanel
中),它的hasFile
属性总是False
。FileUpload.hasFile始终是False
<asp:FileUpload ID="certificateUploader" runat="server"/>
有没有想法?
您不能使用AJAX上传文件=>您不应该在UpdatePanel中放置FileUpload控件,因为此UpdatePanel会向服务器发送AJAX请求。
我从updatepPanel删除了fileupload标签。 – 2012-03-13 11:04:25
asp:UpdatePanel>
很好,是否解决了您的问题? – 2012-03-13 11:10:49
整个过程是关于我试图上传的文件的权限(或不必更具体),我授予用户足够的权限,并且一切顺利。
非常感谢您的帮助和职位。
添加触发器为您的UpdatePanel
<Triggers>
<asp:PostBackTrigger ControlID="btnCertificateUpload" />
</Triggers>
这将迫使回传被点击上传按钮时。
另外补充线下到Page_Load
Page.Form.Attributes.Add("enctype", "multipart/form-data");
将明确给它一个尝试:) – 2012-05-09 06:05:10
这应该是正确的答案。 – DarrylGodden 2012-05-30 16:05:47
只添加触发器为我做了诀窍。谢谢! – Dogahe 2012-10-10 15:06:43
有时与文件上传有问题。相反,它可以用简单的输入:
<input id="filMyFile" type="file" runat="server"></input>
在代码保存文件到服务器:
HttpPostedFile myFile = filMyFile.PostedFile;
string fullPath=Server.MapPath("~/UploadDocuments/") + myFile.FileName;
myFile.SaveAs(fullPath);
和文件将在UploadDocuments文件夹保存在您的ASP.NET应用程序(服务器)
你可以尝试从UpdatePanel中取下按钮; 据我所知,UpdatePanels在任何其他更新面板内更新时总是更新,所以如果你的按钮回发,你的FileUpload控件也回发并丢失文件引用。
我也使用FileUpload控件上传了一个文件,但HasFile属性返回了false。如果你上传一个空文件,那么FileUpload.HasFile也是false。在这种情况下,向要上传的文件添加一些文本将使Hasfile属性返回true。
面临同样的问题。 – Muhammedh 2015-08-03 14:27:25
,以补充@dbFrameIT支持给出的例子:
<asp:UpdatePanel ID="UpdatePanel1" UpdateMode="Always" runat="server">
<ContentTemplate>
<asp:FileUpload ID="FileUpload1" runat="server" />
<asp:Button ID="UploadButton" runat="server" Text="Upload Selected File" OnClick="UploadButton_Click" />
<asp:Label ID="UploadDetails" runat="server" Text=""></asp:Label>
</ContentTemplate>
<Triggers>
<asp:PostBackTrigger ControlID="UploadButton" />
</Triggers>
</asp:UpdatePanel>
后面的代码(C#)
protected void UploadButton_Click(object sender, EventArgs e)
{
if (FileUpload1.HasFile == false)
{
UploadDetails.Text = "Please first select a file to upload...";
}
else
{
string FileName = FileUpload1.FileName;
UploadDetails.Text = string.Format(
@"Uploaded file: {0}<br />
File size (in bytes): {1:N0}<br />
Content-type: {2}",
FileName,
FileUpload1.FileBytes.Length,
FileUpload1.PostedFile.ContentType);
// Save the file
string filePath = Server.MapPath("~/Brochures/" + FileUpload1.FileName);
FileUpload1.SaveAs(filePath);
}
}
是你的问题清楚。到底发生了什么 – JayOnDotNet 2012-03-13 11:04:17
当我点击浏览和浏览文件,选择一个打开,我可以看到fileUploader控制权的文件的路径,当我点击保存按钮(customzied为我的应用程序),我检查如果它.File它每次都返回False。 – 2012-03-13 12:08:48
你可以在这里发布一些代码 – JayOnDotNet 2012-03-13 12:11:38