c# - 无法读取在 C# 处理程序中上传的文件

标签 c# asp.net ashx

我正在尝试将文件上传到 c# 中的处理程序,但似乎该文件未上传。调用 Request.Files["fileNameHere"] 返回 null

我的html代码:

<form id="importManagerForm" action="../ImportManager.ashx" method="POST">
   <input name="selectedFile" id="selectedFile" type="file" /> 
   <input type="submit" value="submit"/>
</form>

ashx 处理程序中的代码是:

public void ProcessRequest(HttpContext context)
{
  var importFile = context.Request.Files["selectedFile"]; //This part returns null
  var fileName = new Guid().ToString() + ".csv";
  importFile.SaveAs(fileName);
}

知道问题出在哪里吗?

更新:

context.Request.Files 进行快速调试显示文件计数为 0。

最佳答案

您的表单上似乎缺少 enctype="multipart/form-data" 属性。

关于c# - 无法读取在 C# 处理程序中上传的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14953712/

相关文章:

c# - 如何在 ETW EventSource 中定义名称层次结构?

c# - 无法序列化我的游戏统计数据

c# - 如何查找成员变量是否为只读?

c# - ashx 文件的输出(服务器端)缓存

c# - Valums Ajax 上传 w/C# ashx 返回 'Index was out of range. Must be non-negative and less than the size of the collection.' 错误

c# - ASP.NET 下载处理程序适用于 IE 但不适用于 Chrome

c# - 带有数据流 block 的消息类型

asp.net - 如何裁剪 Iframe 的内容以显示页面的一部分?

c# - 拥有全局配置类是一件坏事吗?

asp.net - System.Net.Mail.SmtpFailedRecipientException : Mailbox name not allowed