C# 文件上传问题-如何解决?

C# 文件上传问题-如何解决?,c#,asp.net,C#,Asp.net,我试图上传两个场景中的文件 第一: <input id="File2" runat="server" name="name" type="file" clientidmode="Static" /> <asp:Button ID="Button4" runat="server" clientidmode="Static" Text="Go CodeBehind To Get Input Value" OnClick="btnUploadClick" /> 第

我试图上传两个场景中的文件

第一:

<input  id="File2" runat="server" name="name" type="file" clientidmode="Static"  />
<asp:Button ID="Button4" runat="server"  clientidmode="Static" 
  Text="Go CodeBehind To Get Input Value" OnClick="btnUploadClick" />
第二:

我想更改浏览按钮“文本”,但我已经知道,无法直接更改,所以我就这样处理:

<b>
    <asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent"  >
    <input  id="File1" runat="server" name="name" type="file" clientidmode="Static" onchange="setHiddenValue()" style=" visibility:hidden;" />
        <br />
        <input id="Button2" type="button" clientidmode="Static" onclick="triggerFileUpload()" value="HTML Button" />
        <br />
        <asp:Button ID="Button3" runat="server"  clientidmode="Static" Text="Go CodeBehind To Get Input Value" OnClick="btnUploadClick" />

        <script language="javascript">
            function triggerFileUpload() {
                document.getElementById("File1").click();
            }
        </script>
    </asp:Content>
<b>


protected void btnUploadClick(object sender, EventArgs e)
{
    HttpPostedFile postedFile= Request.Files[0];
}



函数triggerFileUpload(){ document.getElementById(“文件1”)。单击(); } 受保护的void btnUploadClick(对象发送方,事件参数e) { HttpPostedFile postedFile=Request.Files[0]; }
当我按下“文件”对话框打开的按钮2时,我选择了“文件”,一切正常

但是当我按下按钮3在服务器端c中获取文件时,
请求.Files[0]
为空 并没有发现任何文件发布

我想要
Request.Files[0]
,因为我想将其作为字节保存在数据库中

所以如果你有什么想法,我会很感激的

提前感谢

我在一个空白项目中编写了相同的代码(第二个场景),效果很好。你也可以这样做并检查它

可能这段代码周围的某些东西破坏了这一点。检查母版页或当前页page_Load()方法是否有中断文件“回发”的内容。您可以尝试:

protected void Page_Load(object sender, EventArgs e)
{
   if (!IsPostBack)
   {
      //Page_Load code
   }
}

不,亲爱的,我不知道
protected void Page_Load(object sender, EventArgs e)
{
   if (!IsPostBack)
   {
      //Page_Load code
   }
}