我正在驗證表單上的輸入,並試圖根據所用控件的組合提示用戶輸入了不正確的輸入。如果陳述過於複雜,這是多行嗎?
例如,我有2個組合框和3個文本框。 2個組合框必須始終具有除第一個(默認)值之外的其他值,但可以填充三個或兩個三個或所有文本框中的一個,以使表單有效。
在一個這樣的場景我有一個6行,如果語句儘量使測試容易閱讀:
if ((!String.Equals(ComboBoxA.SelectedValue.ToString(), DEFAULT_COMBO_A_CHOICE.ToString())
&& !String.IsNullOrEmpty(TextBoxA.Text)
&& !String.Equals(ComboBoxB.SelectedValue.ToString(), DEFAULT_COMBO_B_CHOICE.ToString()))
||
(!String.IsNullOrEmpty(TextBoxB.Text)
|| !String.IsNullOrEmpty(TextBoxC.Text)))
{
//Do Some Validation
}
我有2個問題:
如若這種類型如果的不惜一切代價避免聲明?
用另一種方法包裝這個測試會更好嗎? (這將是一個不錯的選擇,因爲此驗證將發生在多個場景中)
感謝您的輸入!
它打敗其冷凝成一行。 – BoltClock 2011-01-07 16:47:57
可能是題外話:我通常更喜歡`TextBoxA.Text.Trim()`來確保輸入的空白不計算在內。 – 2011-01-07 16:49:33