Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/301.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 当我有2个提交按钮时,HasFile属性的FileUpload返回false_C#_Asp.net - Fatal编程技术网

C# 当我有2个提交按钮时,HasFile属性的FileUpload返回false

C# 当我有2个提交按钮时,HasFile属性的FileUpload返回false,c#,asp.net,C#,Asp.net,我有一个FileUpload按钮和两个Submit按钮。第一个是Confirm,它显示了一个页面,其中包含了我在表单中输入的所有数据,我只是想确认它是否正常。第二个名为Save,将这些数据保存到我的数据库中 问题是,当我单击“确认”按钮时,FileUpload将true返回到HasFile属性,但在第二个按钮中,相同的操作将false返回到HasFile 我能做些什么来修复它 代码 public void Confirm_Click(object sender, EventArgs e) {

我有一个
FileUpload
按钮和两个
Submit
按钮。第一个是
Confirm
,它显示了一个页面,其中包含了我在表单中输入的所有数据,我只是想确认它是否正常。第二个名为
Save
,将这些数据保存到我的数据库中

问题是,当我单击“确认”按钮时,
FileUpload
true
返回到
HasFile
属性,但在第二个按钮中,相同的操作将
false
返回到
HasFile

我能做些什么来修复它

代码

public void Confirm_Click(object sender, EventArgs e)
{
    if (FileUpload1.HasFile)
    {
          // Many validations here
    }
}

public void Save_Click(object sender, EventArgs e)
{
    // Always return false here
    if (FileUpload1.HasFile)
    {
          // Many validations here
    }
}
<asp:Content ID="Content2" ContentPlaceHolderID="contentConteudo" runat="server">
   <asp:Panel runat="server" ID="Formulario">
      <asp:Panel ID="pnl_form" runat="server">
         <asp:FileUpload id="FileUpload1" class= "span2" runat="server"></asp:FileUpload>
         <asp:Button ID="Confirm" CssClass="btn btn-netimoveis btn-large" runat="server"
          OnClick="Confirm_Click"  UseSubmitBehavior="false"  Text="Confirmar" />
      </asp:Panel>
 </asp:Panel>
 <asp:Panel ID="pnl_confirm" runat="server">
    <asp:Button ID="Save" CssClass="btn btn-netimoveis btn-large" runat="server"
     Text="Incluir" OnClick="Save_Click" />
</asp:Panel>
ASPX代码

public void Confirm_Click(object sender, EventArgs e)
{
    if (FileUpload1.HasFile)
    {
          // Many validations here
    }
}

public void Save_Click(object sender, EventArgs e)
{
    // Always return false here
    if (FileUpload1.HasFile)
    {
          // Many validations here
    }
}
<asp:Content ID="Content2" ContentPlaceHolderID="contentConteudo" runat="server">
   <asp:Panel runat="server" ID="Formulario">
      <asp:Panel ID="pnl_form" runat="server">
         <asp:FileUpload id="FileUpload1" class= "span2" runat="server"></asp:FileUpload>
         <asp:Button ID="Confirm" CssClass="btn btn-netimoveis btn-large" runat="server"
          OnClick="Confirm_Click"  UseSubmitBehavior="false"  Text="Confirmar" />
      </asp:Panel>
 </asp:Panel>
 <asp:Panel ID="pnl_confirm" runat="server">
    <asp:Button ID="Save" CssClass="btn btn-netimoveis btn-large" runat="server"
     Text="Incluir" OnClick="Save_Click" />
</asp:Panel>


文件上传背后的逻辑不容易理解。。文件是如何获取的,是否保存的。
如果忽略它,则可以在文件可用时使用它

public void Confirm_Click(object sender, EventArgs e)
{
    if (FileUpload1.HasFile)
    {
          // Many validations here
          // Keep file in Session or in a temporary storage
    }
}

public void Save_Click(object sender, EventArgs e)
{
    // Take the file from session or temporary storage and save it

    if (myFile != null)
    {
          // Many validations here
     }
}

你能为按钮发布asp.net标记代码吗?这些信息似乎不足以识别问题。你在页面加载中用FileUpload1做什么?@Guanxi在页面加载中我不叫我的FileUpload。