我有简单的 http 表单来使用 http 输入标签上传文件,如下所示:
<% using (Html.BeginForm("Add", "Home", FormMethod.Post, new { enctype = "multipart/form-data" }))
{%>
<label for="file"> Select File :</label>
<input type="file" name="uploadedFile" value="" accept="text/plain" class="fileUpload" />
<input id="btnAdd" type="submit" class="button" name="Add" value=" Add "/>
<% } %>
回到控制器我有一个相应的动作:
[HttpPost]
public ActionResult Add(HttpPostedFileBase uploadedFile)
{
Logger.Debug("Inside Add");
ProductModel model = new ProductModel();
if (uploadedFile.ContentLength > 0)
{
string filePath = Path.Combine(HttpContext.Server.MapPath("~/Uploads"),
Path.GetFileName(uploadedFile.FileName));
Logger.Debug("File saved at - " + filePath);
uploadedFile.SaveAs(filePath);
model.FileName = uploadedFile.FileName;
model.Add(filePath);
return View("Result", model);
}
return RedirectToAction("Index");
}
在我的开发机器和实验室服务器上,这非常有效。但在生产中,它甚至不会发送任何提交按钮的请求。我通过提琴手检查了请求,它没有显示请求甚至来自此表单的任何痕迹,来自 win 2008 r2 生产服务器上的 IE 8。
我在这里一无所知。可能是什么问题?您认为 IE 安全权限、UAC、组策略可能是个问题吗?或者你还有其他话要说。