DataAnnotations中的FileExtensions属性不起作用asp.net mvc

时间:2017-05-13 13:03:27

标签: c# asp.net asp.net-mvc data-annotations

我试图在我的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))。但事实并非如此。请帮忙吗?

0 个答案:

没有答案