我试图在我的asp.net mvc应用程序中仅允许excel文件(.xls和.xlsx),但是当我尝试上传excel文件时(在我的情况下' sale.xlsx'),它为 ModelState.IsValid 显示 false 。可能是什么问题。
以下是代码。
型号:
public class ReadExcel
{
[Required(ErrorMessage = "Please select file")]
[FileExtensions(Extensions = ".xls,.xlsx", ErrorMessage = "Only excel file")]
public HttpPostedFileBase file { get; set; }
}
查看:
@using (Html.BeginForm("Index", "ReadExcel", FormMethod.Post, new { enctype = "multipart/form-data" }))
{
@Html.TextBoxFor(m => m.file, new { type = "file" })
<button id="submitButton" type="submit">Submit</button>
@Html.ValidationMessageFor(model => model.file)
}
控制器:
[HttpPost]
public ActionResult Index(ReadExcel readExcel)
{
if (ModelState.IsValid)
{
//code
}
return View();
}
显然,当上传excel时,控件应移动到if块内(if(ModelState.IsValid))。但事实并非如此。请帮忙吗?