Required Data Annotation Validator in ASP.NET MVC: A Tutorial with Code Example. Data Annotation is a feature of ASP.NET MVC that allows developers to apply additional attributes to the Model properties to enforce certain validation rules. Data Annotation attributes are used to validate user inputs, enforce certain data types, and provide additional information about the Model properties. In this blog post, we'll go over some of the commonly used Data Annotation attributes in ASP.NET MVC and how to use them in your projects.
Required Attribute
The Required attribute is used to specify that a particular property is required. This attribute is applied to the property that cannot be left blank. If the user tries to submit the form without entering a value for the property marked as Required, the ModelState will be invalid, and the user will be prompted to enter a value for the property.
Here's an example of how to use the Required attribute in ASP.NET MVC:
public class Contact
{
[Required(ErrorMessage = "First Name is required")]
public string FirstName { get; set; }
[Required(ErrorMessage = "Last Name is required")]
public string LastName { get; set; }
[Required(ErrorMessage = "Email is required")]
[EmailAddress(ErrorMessage = "Invalid Email Address")]
public string Email { get; set; }
}
In the above example, the FirstName, LastName, and Email properties are marked as Required. The ErrorMessage property is used to specify the error message that will be displayed if the user tries to submit the form without entering a value for the property.
View:
@model Contact
@using (Html.BeginForm())
{
@Html.LabelFor(m => m.FirstName)
@Html.TextBoxFor(m => m.FirstName)
@Html.ValidationMessageFor(m => m.FirstName)
@Html.LabelFor(m => m.LastName)
@Html.TextBoxFor(m => m.LastName)
@Html.ValidationMessageFor(m => m.LastName)
@Html.LabelFor(m => m.Email)
@Html.TextBoxFor(m => m.Email)
@Html.ValidationMessageFor(m => m.Email)
}
Next Step: Enable client side validation, you can check this:
Enable client side validation in ASP.NET MVC