2008-11-05 5 views
1

전적으로 GMT에서 실행되는 데이터베이스가 있습니다. 그러나 클라이언트 시스템은 여러 다른 시간대 (BST 포함)에서 실행될 수 있습니다. 다시도록 SqlConnection을 사용하여 데이터를 가져 때SqlConnection에서 표준 시간대 변환을 어떻게 막으십니까?

2008년 8월 19일

(18)이된다 2008년 8월 23시 0분 0초 예를 들어, 그래서 날짜 값을 변환합니다.

제 질문은이 변환을 원하지 않는다는 것을 연결에 지정하는 방법이 있습니까?

답변

1

데이터베이스에 UTC 값만 보관하십시오. 데이터베이스에서 저장/검색 할 때 비즈니스 개체가 항상 UTC/현지 시간으로 /부터 변환되므로 사용자가 현지 시간 값을보고 입력 할 수 있습니다. BO의 getter/setter 메소드에서 변환을 구현하여 개인 변수가 UTC에 있고 따라서 데이터베이스에 다시 저장 될 때 이미 필요한 양식으로 변환 할 수 있습니다.

3

어떻게 데이터에 액세스합니까?

웹 서비스에서 DataSets/DataTables를 전달할 때도 동일한 문제가있었습니다.

나는 그것은 그 이후 잘했다 DataTable을

returnedDataTable.Columns("ColumnName").DateTimeMode = DataSetDateTime.Unspecified 

에 DataColumn.DateTimeMode 속성을 설정하여 라운드 얻었다.

도움이 될지 모르겠다.

관련 문제