Hi mahesh213,
You need to check the enpty value inside IsLetter and IsDate method.
If the value is empty then return false else proceed for further validation checking.
private bool IsLetter(string value)
{
Regex regexLetter = new Regex(@"^[a-zA-Z]+$");
return regexLetter.IsMatch(value);
}
private bool IsDate(string value)
{
Regex regex = new Regex(@"(((0|1)[0-9]|2[0-9]|3[0-1])\/(0[1-9]|1[0-2])\/((19|20)\d\d))$");
//Verify whether date entered in dd/MM/yyyy format.
bool isValid = regex.IsMatch(value);
//Verify whether entered date is Valid date.
DateTime dt;
isValid = DateTime.TryParseExact(value, "dd/MM/yyyy", new CultureInfo("en-GB"), DateTimeStyles.None, out dt);
return isValid;
}
Change above code with below.
private bool IsLetter(string value)
{
bool isValid = false;
if (!string.IsNullOrEmpty(value))
{
Regex regexLetter = new Regex(@"^[a-zA-Z]+$");
isValid = regexLetter.IsMatch(value);
}
return isValid;
}
private bool IsDate(string value)
{
bool isValid = false;
if (!string.IsNullOrEmpty(value))
{
Regex regex = new Regex(@"(((0|1)[0-9]|2[0-9]|3[0-1])\/(0[1-9]|1[0-2])\/((19|20)\d\d))$");
//Verify whether date entered in dd/MM/yyyy format.
isValid = regex.IsMatch(value);
//Verify whether entered date is Valid date.
DateTime dt;
isValid = DateTime.TryParseExact(value, "dd/MM/yyyy", new CultureInfo("en-GB"), DateTimeStyles.None, out dt);
}
return isValid;
}