Я получил плохой код в существующем проекте. Пожалуйста, посмотрите один раз и скажите мне предложения относительно этого рефакторинга.
if (!(txtSurnameSearch.Text.Length >= 2 && txtInitialsSearch.Text.Length != 0 ||
txtSurnameSearch.Text.Length >= 3 && txtInitialsSearch.Text.Length == 0 ||
ctrlIDNumberSearch.Text.Length >= 6 || ctrlMPLNumberSearch.Text != "" ||
!string.IsNullOrEmpty(txtUcn.Text)))
{
if (txtSurnameSearch.Text.Length < 2 && txtInitialsSearch.Text.Length != 0 && ctrlMPLNumberSearch.Text == "")
lsInvalidSearchNotification += "Surname must contain at least 2 characters when initials are not blank OR" + "\r\n";
if (txtSurnameSearch.Text.Length < 3 && txtInitialsSearch.Text.Length == 0)
lsInvalidSearchNotification += "Surname must contain at least 3 characters when initials are blank OR" + "\r\n";
lsInvalidSearchNotification += "ID Number must contain at least 6 characters OR" + "\r\n";
if (ctrlMPLNumberSearch.Text == "")
lsInvalidSearchNotification += "MPL Number must be valid, 9 characters" + "\r\n";
lbComboPassed = false;
}