【发布时间】:2020-07-02 11:54:31
【问题描述】:
我有表单,但它不会验证 View 上的错误消息。当我检查它时,根本没有错误。我在下面需要一些帮助来更好地改进我的逻辑。离开EditorFor时我想要什么,应该有一个错误状态“此字段是必需的”,并带有图像标题(错误图像)。
// View
<div class="form-group row">
<label for="Attendee" class="col-sm-2 col-form-label">Attendee Cell Number*</label>
<div class="col-sm-3">
@Html.EditorFor(model => model.RegForm.CellNumber, new { htmlAttributes = new { @class = "form-control", autofocus = "autofocus", placeholder = "Cell Number" } })
@Html.ValidationMessageFor(model => model.RegForm.CellNumber)
</div>
</div>
// Model
public class RegistrationTrainingForm
{
public string Title { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string Position { get; set; }
public string Company { get; set; }
public string StreetAddress {get ; set;}
public string StreetAddressLine { get; set; }
public string City { get; set; }
public string State { get; set; }
public string Country { get; set; }
public int ZipCode { get; set; }
public string Email { get; set; }
[Required(ErrorMessage = "This field is required")]
[DataType(DataType.PhoneNumber)]
public string CellNumber { get; set; }
public string DietaryRequirements { get; set;}
public int Country_Id { get; set; }
public string Country_Name { get; set; }
}
//CustomValidation.cs
public class CustomFormValidation:ValidationAttribute
{
protected override ValidationResult IsValid(object value, ValidationContext validationContext)
{
return base.IsValid(value, validationContext);
}
}
【问题讨论】:
-
验证是否被触发?在操作中,
ModelState.IsValid属性你得到了什么?我认为自定义验证没有触发。分享你的 Action 代码? -
@Rahatur 我没有在我的控制器上创建操作。它只是一个 CustomValidation.cs 我想要我的 EditorFor 当用户离开时如果它是空的应该验证错误检查。
-
我已经发布了一个可能原因的答案。请检查答案是否适合您。
标签: c# asp.net-mvc data-annotations