2009-05-13 4 views
1

SqlDataReader를 사용하여 데이터를 가져 오려고합니다.이 중 하나의 열은 datetime에 있습니다. 이 무언가를하고 싶습니다.SqlDataReader는 모든 것을 String으로 저장합니까?

SqlCommand command = new SqlCommand("SELECT * FROM table", connection); //connection is defined earlier 
     SqlDataReader data = command.ExecuteReader(); 
     while(data.Read()){ 
      DateTime birthday = data["Birth"]; 
      list.Add(birthday); 
     } 
    } 

이렇게 할 수 있습니까? 또는 SqlDataReader가 문자열을 반환합니다.이 경우 문자열을 사용하여 새 DateTime 개체를 만들어야합니다.

감사합니다, -S

답변

7

SqlDataReader 개체를 반환 데이터는 강력한 형식의 객체 - 딱 맞는 메소드를 호출, 예 :

data.GetDateTime (서수)

4

당신이 원하는 :

DateTime birthday = data.GetDateTime(data.GetOrdinal("Birth")); 

SqlDataReader에는 강력한 형식의 Get *() 메서드가 whole bunch 있습니다.

+0

GetDateTime 메서드는 열 이름이 아닌 서수 만 사용하므로 data가되어야합니다 .GetDateTime (data.GetOrdinal ("Birth")) – LukeH

+0

실제로 맞습니다! 지금 고치고있어. –

관련 문제