2013-04-02 2 views
0

입력 한 값이 올바른 날짜인지 확인하기 위해 sVenueDay (텍스트 상자를 통해 입력 한 텍스트)의 유효성을 검사하려고합니다. txtBoxVenueDay.Text에 "Sunday"를 입력했습니다. 프로그램을 실행할 때 입력 한 "일요일"이 유효한 날짜 일지라도 "입력 한 날짜가 올바르지 않습니다"라는 메시지가 표시됩니다. ! 나는 사용하여 시도 sVenueDay.Equals ("일요일") 형식 (및 기타뿐만 아니라 일)하지만 아무것도 :/2 문자열 비교 (요일) 효과 없음

string sVenueDay = txtBoxVenueDay.Text; 

if (sVenueDay != "Monday" || sVenueDay != "Tuesday" || sVenueDay != "Wednesday" || sVenueDay != "Thursday" || sVenueDay != "Friday" || sVenueDay != "Saturday" || sVenueDay != "Sunday") 

    { 
     lblOutput.Text = "Input entered not valid day"; 
     return; 
    } 

else 
    lblOutput.Text = "Valid day"; 

답변

0

당신이 에 "월요일"동일하지 나 여부를 확인하고는 동일 아니다 "화요일". 어떤 문자열이 "월요일" "화요일"과 같다고 제안 할 수 있습니까? :)

내가 원하는 생각 : 오히려 더 유용하게

if (sVenueDay != "Monday" && sVenueDay != "Tuesday" && ...) 

또는를 :

private static readonly HashSet<string> ValidDays = new HashSet<string>(
    new[] { "Monday", "Tuesday", ... }); 

... 

if (!ValidDays.Contains(sVenueDay)) 
{ 
    ... 
} 
+0

감사합니다. :) – synthesis

0

때 사용하거나 첫 번째 조건에 해당하는 경우 그 다음 내가 다음 조건을 확인하지 않습니다 .. 먼저 true와 false를 확인하십시오. 다음과 같이 시도하십시오. (equals 메소드 사용) 문자열 sVenueDay = txtBoxVenueDay.Text; if (sVenueDay == "Monday"|| sVenueDay == "Tuesday"|| sVenueDay == "Wednesday"|| sVenueDay == "Thursday"| | sVenueDay == "Friday"|| sVenueDay == "Saturday"|| sVenueDay == "Sunday") {lblOutput.Text = "유효한 날짜"; 반환; } else lblOutput.Text = "입력 한 날짜가 유효하지 않습니다";