2017-11-24 1 views
2

같은 질문은 스택이지만 대답은 제공되지 않습니다. 데이터가 있습니다 ds.Tables[0].Rows[0].Field<DateTime>("Date"))데이터 집합의 datetime 필드에서 시간 제거

이 필드에서 시간을 삭제해야합니다. 아무도 말해 줄 수있는 방법 ??? 나는 다음과 같은 노력하지만

Convert.ToDateTime(ds.Tables[0].Rows[0].Field<DateTime>("Date")).ToString("MM/dd/yyyy"); 
+0

사용 날짜 시간의 날짜 속성을 : ds.Tables [0] .Rows [0] = ds는. 테이블 [0]. 행 [0]. 필드 ("날짜") 날짜 – jdweng

+0

C#에는 'Date'데이터 형식이없고 'DateTime'데이터 형식 만 있습니다. 또한'Field '는'DateTime'을 리턴하므로'Convert.ToDateTime'은 아무것도하지 않습니다. 작동하지 않는다는 것은 무슨 뜻입니까? –

+1

'.Date' 속성은 시간 구성 요소없이 DateTime을 반환합니다. 다른 것들, 특히 깰 수있는 미국 고유의 문자열 조작이 필요하지 않습니다. –

답변

4

DateTime alsways 날짜와 시간 부분이 작동하지 않았다. 형식이없는 가치가 있습니다. 따라서 예를 들어 dt.ToString()으로 전화하면 표현과 혼동을 일으킬 수 있습니다.

string으로 변환하지 않고 위에서 수행 한 것과 동일한 결과를 얻고 날짜 만 표시하는 형식을 적용한 다음 결과를 DateTime으로 다시 변환합니다. 당신은 위에서 말했듯이 그들은 지금 제로로하고, 시간, 분, 초를 제거하지 않습니다, 그것은 Date property

DateTime yourDateTime = ds.Tables[0].Rows[0].Field<DateTime>("Date"); 
DateTime onlyDate = yourDateTime.Date; 

있어 사용할 필요하지만. 따라서 당신이 이들 중 하나를 사용할 수 있습니다

  1. string onlyDateDisplayed = yourDateTime.ToString("d");
  2. string onlyDateDisplayed = yourDateTime.ToString("MM/dd/yyyy");
  3. string onlyDateDisplayed = yourDateTime.ToShortDateString();
+0

이 값을 표시하는 데 사용되는 컨트롤의 형식 속성을 설정하는 것이 훨씬 좋습니다. –

+0

@PanagiotisKanavos : OP는 모든 컨트롤을 사용하고 있다고 말하지 않았습니다. 형식 속성이 있습니다. –

+1

웹 응용 프로그램에서 미국 전용 형식을 사용하면 문제가 발생합니다. 하나는 다음 두 가지 질문이 무엇인지 짐작할 수 있습니다. 왜 자바 스크립트가 작동하지 않고 일부 고객들에게 달이 바뀌는가? –

관련 문제