일부 또는 전체 날짜로 검색 할 수있는 필터 필드가 있습니다. 즉, 사용자가 입력하려는 방식에 따라 TryParseExact가 보이지 않습니다. 최선의 선택과 같습니다.DateTime.TryParse는 yyyy에서만 실패합니다
DateTime.TryParse(fromDate.Text, CultureInfo.InvariantCulture, DateTimeStyles.None, out dateFromValue)
은 YYYY 문자열하지만 모든 구문 분석 :
문제는 다음과 같은 코드가 있다는 것입니다. 예 : "05/1980"및 "1980/05"는 {1/05/1980 12:00:00 AM}으로 인식되지만 "1980"은 실패합니다.
필자는 파서가 모든 것이 4 자리 시퀀스 일 때 yyyy와 ffff를 구분할 방법이 없다고 생각하지만이 작업을해야합니다.
if(!DateTime.TryParse("1980", CultureInfo.InvariantCulture, DateTimeStyles.None, out date))
DateTime.TryParseExact("1980","yyyy",CultureInfo.InvariantCulture, DateTimeStyles.None, out date);
또는 내가 잘못하고있는 것보다 더 우아한 방법일까요?
미리 감사드립니다.
좋은 지적 보인다 - 내가 더 조심해야한다 언제 copypasting! 그것을 지적 해 주셔서 감사합니다 :) 이 특별한 경우에는 TryParse를 사용하여 빠진 날짜와 월을 추측 할 수 있습니다 (예 : 1 월 1 일 등). –