2011-11-21 2 views
3

Silverlight에는 완전한 TimeZoneInfo가 없으므로 직접 일부 기능을 구현해야합니다. 예를 들어, 다음과 같은 정보는 .NET TimeZoneInfo 중에서 오는일광 절약 시간 규칙 및 변환

ID: Central Standard Time 
    Display Name: (UTC-06:00) Central Time (US & Canada) 
    Standard Name:     Central Standard Time 
    Daylight Name:     Central Daylight Time ***Has Daylight Saving Time*** 
    Offset from UTC:      -6 hours, 0 minutes 
    Number of adjustment rules:       2 
    Adjustment Rules: 
     From 1/1/0001 12:00:00 AM to 12/31/2006 12:00:00 AM 
     Delta: 01:00:00 
     Begins at 2:00 AM on Sunday of week 1 of April 
     Ends at 2:00 AM on Sunday of week 5 of October 
     From 1/1/2007 12:00:00 AM to 12/31/9999 12:00:00 AM 
     Delta: 01:00:00 
     Begins at 2:00 AM on Sunday of week 2 of March 
     Ends at 2:00 AM on Sunday of week 1 of November 

내 질문에 내가 다시 로컬 및로 UTC로 변환 할 필요가있을 때 나는 그런 규칙을 구현합니까 어떻게?

UTC로 가져 가야할까요? 6 시간을 빼고 3 월 2 일 일요일 오전 2시 이후에 1 시간 추가했는지 확인하십시오.

아니면 오전 2시 이후에 5를 빼는 지 확인해야합니까?

답변

1

일광 절약 시간제가 적용되는 시간은 UTC가 아니라 해당 시간대의 현지 시간입니다. 따라서 UTC 시간을 가져와 6 시간을 빼고 수표를 찍은 다음 적용 가능한 경우 시간을 다시 추가해야합니다.