2014-09-09 1 views
0

지난 주에 우리의 응용 프로그램이 작동하는 방식은 백엔드 팀이 날짜를 YYYY-MM-DD 형식의 문자열로 저장하는 것이 었습니다. 이번 주 그들은 문자열 대신 DateTime 객체로 변경했습니다. 그래서 지금 우리가 사용하는이 특정 DateTime 컨트롤의 문자열 값에서 DateTime 개체를 만 들고 있습니다.날짜 시간 객체를 포맷하는 방법이 있습니까?

mySearchModelObject.fromDate = myDateRangeControl.Values[0]; //string 
mySearchModelObject.toDate = myDateRangeControl.Values[1]; //string 

지금은 더 같이이다 : 그러니까 기본적으로 우리의 사용자 지정 컨트롤과

는,이 같았다

DateTime fromDate, toDate; 
DateTime.Tryparse(myDateRangeControl.Values[0], out fromDate); 
DateTime.Tryparse(myDateRangeControl.Values[1], out toDate); 

mySearchModelObject.fromDate = fromDate; 
mySearchModelObject.toDate = toDate; 

하지만 지난 주 수익률에서 다른 결과와 같은 날짜 범위로 검색 DB.

우리의 날짜가 "YYYY-MM-DD"문자열이기 때문에 궁금 합니다만, 이제는 시스템의 형식이 + 시간 자체 인 날짜 시간 객체를 얻고 있습니다.

내 DateTime 개체를 동일한 YYYY-MM-DD 형식으로 계속 서식을 지정하는 방법이 있습니까?

답변

1

DateTime.TryParseExact를 사용하고 "yyyy-MM-dd"를 형식 문자열로 제공하십시오.

또한 데모 https://dotnetfiddle.net/NZz0HG

경우를 참조

standardcustom 날짜 형식에 MSDN을 참조 YYYY-MM-DD로 포맷 된 날짜를 가지고 fromDate.ToString("yyyy-MM-dd")을 할 수

1

http://msdn.microsoft.com/en-us/library/h9b85w22를 참조하십시오 mySearchModelObject.fromDate은 유형 객체이므로 DateTime이나 문자열을 할당 할 수 있으며 컴파일러 경고/오류는 없습니다. 하지만 mySearchModelObject.fromDate.ToString()을 사용하면 '2014-12-31'이전에 다른 결과가 나타납니다. 12/31/2014 12:00:00 AM

+0

오해가 있었을 수도 있습니다. 'mySearchModelObject' 필드는 이제'DateTime'이므로, 이전과 같은 문자열로 변환하는 것은 유효하지 않습니다. – sab669

+1

아, 확인 코드를 사용하지 않고 TryParse를 사용하지 마십시오. 구문 분석을 할 수없는 경우 예외를 throw하는''Parse''를 사용하십시오. 구문 분석이 정상인지 여부는 알 수 없습니다. fromDate는 기본 날짜입니다. –

+0

원격 연결에서 내 실제 PC로 붙여 넣기를 복사 할 수 없습니다. 이 포스트는 IF (tryParse ...) {assign values}의 줄을 따라 더 많이 있습니다. 입력하기가 짧기 때문에 그냥 놓아 둡니다. 그래도 고마워 :) – sab669

관련 문제