FluentValidation이있는 간단한 모델을 만들었지 만 작동하지 않는 것 같습니다.FluentValidation을 MVC4에 통합하는 방법
- 내 데이터베이스가 비어 이름으로 업데이트하고 통과
TryUpdateModel()
- 내가
Application_Start()
에FluentValidationModelValidatorProvider.Configure();
를 추가하는 시도
내 양식을 제출할 때 클라이언트 측 유효성 검사 오류를 얻을 수 없지만 그것은 클래스를 사용하여 추가 한 경우에도 FluentValidationModelValidatorProvider
을 찾을 수 없다는 것을 보여줍니다. 나는 또한 내 모델 클래스 위에 [Validator(typeof(Category))]
을 추가하려고 시도했지만 아무 것도하지 않았다. This 우리가 정보를 찾고있는 자원. 당신이 FluentValidation.Mvc
참조가없는 것 같은
모델
public class Category
{
public int ID { get; set; }
public string Name { get; set; }
virtual public ICollection<Image> Images { get; set; }
}
public class CategoryValidator : AbstractValidator<Category>
{
public CategoryValidator()
{
RuleFor(x => x.Name).NotEmpty().WithMessage("Category name is required.");
}
}
컨트롤러
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Edit(Category c)
{
var category = _db.Categories.Where(x => x.ID == c.ID).SingleOrDefault();
if (category == null) return HttpNotFound();
// Update model and return to category list
if (TryUpdateModel(category)) // it passes with empty name and saves changes
{
_db.SaveChanges();
return RedirectToAction("index", "category");
}
// Something is wrong, return view back
return View(c);
}
작동하지 않는 using 문은 무엇입니까? – jrummell
@jrummell'FluentValidation;을 사용합니다. – sed
'FluentValidation.Mvc;를 사용하십시오. – jrummell