dd/MM/yyyy
형식의 문자열을 보내고 있는데이 형식은 web.config 전역 설정에 따라 lv-LV
문화권으로 구문 분석됩니다.DateTime.Parse, 라트비아 문화 설정
나는 그 날짜를 DateTime.Now
과 비교하여 과거인지 확인합니다.
DateTime.Parse
은 내 문자열을 dd.MM.yyyy
형식으로 변환하지만 DateTime.Now는 형식이므로 비교가 항상 실패합니다.
동일한 스레드 문화권에서 DateTime.Now
의 출력이 DateTime.Parse
의 출력과 다른 이유는 무엇입니까?
감사합니다!
(업데이트)이 I가 사용하고있는 코드이다
가InputText]를이
DateTime date = DateTime.Parse(InputText, CultureInfo.CurrentCulture);
// Check it's not in the past
this.IsValid = (date.CompareTo(DateTime.Now) > 0);
는 [DateTime.Now 이러한 맥락에서 MM에 DD.MM.YYYY 형식의 형태의 입력을 포함는 단순히 시점 인 - LV-LV CultureInfo를 [일]를 사용 .DD.YYYY 포맷은 DateTime
서식이없는 DateTime.Parse
나는 더 완전한 코드를 보여줄 필요가 있다고 생각한다; 'DateTime' ('.Now' 나'.Parse' 같은 결과)은 자신의 포맷을 가지지 않습니다 - ddmm 대 mmdd는'DateTime '이 아닌 * 문자열 표현 *의 속성입니다. '가치 자체. – AakashM
두 날짜를 문자열로 비교하고 있습니까? 두 개의 datetime 구조체를 비교하는 경우 toString이 나타내는 문화권이 중요하지 않습니다. – Alex