我正在尝试使用文件上传来上传Excel文件,但是每当我执行“ If(FileUpload.HasFile)”时,即使我已经选择了文件,它也总是返回false。单击上传按钮时,下面是我的代码。
(编辑:当我上传文件时,if语句最终变为true另一个问题是此错误消息显示“ SaveAs方法配置为需要根目录路径,而路径'〜/ Datas / Book1.xlsx'不是根。” )
Blockquote
slot
我有一个包含按钮的表格,这是文件上传和上传按钮所在的位置
readyRead
答案 0 :(得分:0)
由于某些安全原因,FileUpload控件在回发期间将不会保留该值。
一种方法是为“上传”按钮设置触发器
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:FileUpload ID="fileUpload" runat="server"></asp:FileUpload>
<asp:Button ID="btnUpload" runat="server" OnClick="btnUpload_Click" />
</ContentTemplate>
<Triggers>
<asp:PostBackTrigger ControlID="btnUpload" />
</Triggers>
</asp:UpdatePanel>
protected void btnUpload_Click(object sender, EventArgs e)
{
if (fileUpload1.HasFile)
{
fileUpload1.SaveAs("C:\\" + fileupload1.FileName);
}
}
答案 1 :(得分:0)
我从头到尾都尝试过,并且能够获取文件。
<asp:FileUpload ID="FileUpload1" runat="server" />
<asp:Button ID="btnok" runat="server" Text="Ok" OnClick="btnok_Click"/>
下面是单击按钮的事件。我可以知道您在哪个地方遇到问题。
protected void btnok_Click(object sender, EventArgs e)
{
if(FileUpload1.HasFile)
{
var val=FileUpload1.PostedFile;
}
}