我试图验证使用数据注释的形式。看来伟大的字符串类型和整数,但文件上传,我无法从类验证。这纯粹是发送一个字符串“HttpPostedFileWrapper”。有没有人有什么建议吗?

由于

有帮助吗?

解决方案

可以只使用数据的注解按照一般的使用。

例如,一个视图模型如:

public class UpdateSomethingViewModel {
    [DisplayName("evidence")]
    [Required(ErrorMessage="You must provide evidence")]
    [RegularExpression(@"^abc123.jpg$", ErrorMessage="Stuff and nonsense")]
    public HttpPostedFileWrapper Evidence { get; set; }
}

然后在您的控制器仅仅是以往:

[HttpPost]
public ActionResult UpdateSomething(UpdateHSomethingViewModel model)
{
    if (ModelState.IsValid)
    {
        // do stuff - plenty of stuff
        // weee, we're off to see the wizard.

        return RedirectToAction("UpdateSomethingSuccess", model);
    }

    return View(model);
}

我刚测试(尽管在MVC2 / .NET 4)和它的工作治疗。

希望有所帮助。

干杯, 特里

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top