自定义ValidationAttribute未在视图模型中触发IsValid函数调用的问题,可能是由于以下原因导致的:
services.AddControllersWithViews()
.AddMvcOptions(options =>
{
options.ModelMetadataDetailsProviders.Add(new ValidationAttributeAdapterProvider());
});
public class MyViewModel
{
[MyCustomValidation]
public string MyProperty { get; set; }
}
public class MyCustomValidationAttribute : ValidationAttribute
{
public override bool IsValid(object value)
{
// 在这里实现自定义验证逻辑
return true;
}
}
@if (!ViewData.ModelState.IsValid)
{
<div class="alert alert-danger">
<strong>Error:</strong> Please check the input.
</div>
}
如果以上方法仍未解决问题,请提供更多详细信息以便进一步排查。
领取专属 10元无门槛券
手把手带您无忧上云