Обратите внимание, что ваша проверка - это просто установка фона текста и метки. Ничто в этом явно не сообщает приложению, что произошла ошибка и должна быть показана пользователю. Поэтому, когда код достигнет дна и нажмет Server.Transfer("frmPersonalVerified.aspx");
, он с радостью перейдет на следующую страницу. Вам нужен какой-нибудь флаг, отмечающий, была ли проверка успешной или нет, прежде чем перейти на следующую страницу:
//Checking validation for the text boxes
bool isValid = true;
if (string.IsNullOrEmpty((txtFirstName.Text ?? string.Empty).Trim()))
{
txtFirstName.BackColor = System.Drawing.Color.Yellow;
lblError.Text += "Please enter first name! <br />";
isValid = false;
}
if (string.IsNullOrEmpty((txtLastName.Text ?? string.Empty).Trim()))
{
txtLastName.BackColor = System.Drawing.Color.Yellow;
lblError.Text += "Please enter last name! <br />";
isValid = false;
}
// etc.
Затем проверьте isValid
, прежде чем перейти на следующую страницу:
if (isValid)
{
//output information if correct validation
Session["txtFirstName"] = txtFirstName.Text;
Session["txtLastName"] = txtLastName.Text;
Session["txtPayRate"] = txtPayRate.Text;
Session["txtStartDate"] = txtStartDate.Text;
Session["txtEndDate"] = txtEndDate.Text;
Server.Transfer("frmPersonalVerified.aspx");
}