2010-06-30 3 views
0

사용자 정의 날짜 확인 형식 C#을 사용

C# 코드

protected void cusCustom_ServerValidate(object sender, ServerValidateEventArgs e) 
{ 
    if(e.Value.Length == 8) 
     e.IsValid = true; 
    else 
     e.IsValid = false; 
} 

페이지 코드

<asp:CustomValidator runat="server" id="cusCustom" controltovalidate="txtoedate" onservervalidate="cusCustom_ServerValidate" errormessage="The text must be exactly 8 characters long!" /> 

위의 코드는 길이를 위해 일하고,하지만 난이 같은 날짜 형식을 확인하려면 "yyyy-mm-dd",이 날짜 형식 확인, 내 코드 변경 방법.

답변

3

음, 첫째, 날짜 형식은 (10)에 그 문제를 해결해야합니다 그래서 그 다음 가장 좋은 건 당신이 원하는 특정 형식의 DateTime.TryParseExact이며, 8 자없는 코드 도움이 필요하십니까 유효성 검사. 당신은 단지 날짜 부분의 숫자 표현을 처리하고 정확하게 형식을 지정하고 있기 때문에

DateTime value; 
e.IsValid = DateTime.TryParseExact(e.Value, "yyyy-MM-dd", 
    CultureInfo.InvariantCulture, DateTimeStyles.None, out value); 

당신은 멀리 InvariantCulture로 얻을 수 있습니다.

+1

오, 아니요, 날짜를 확인하기 위해'시도 ... 잡아 두지 마세요. 'DateTime.TryParseExact'를 사용하십시오. –

+0

샘플 코드 – Gopal

+0

@ 다린을 얻을 수 있습니까? TryParse 만 알 수 있었지만 TryParseExact는 알지 못했습니다. 감사. –

0

DateTime.TryParse Method을 사용하십시오.

+0

샘플 코드를 제공 할 수 있습니까? – Gopal

+0

샘플이 제공된 링크에 있었는데, 충분히 표시되지 않았습니다. 죄송합니다. –

0

날짜의 정규식을 시도하십시오.