तो डेलाइट बचत समय प्रभाव में है, और एक तिथि वस्तु डेटाबेस (यूटीसी प्रारूप), जो आप इसे (उदाहरण के लिए asp.net-mvc
में देखें) दृश्य में दिखाने के पुनः प्राप्त में सहेजा गया है।ConvertTimeFromUtc() और ToUniversalTime() डीएसटी संभालता है?
और तुम है कि इस विधि का उपयोग कर कार्य करें:
public static DateTime ConvertToLocalTimeFromUtcTime(DateTime utcDate, string timeZoneId)
{
TimeZoneInfo localZone = TimeZoneInfo.FindSystemTimeZoneById(timeZoneId);
DateTime localTime = TimeZoneInfo.ConvertTimeFromUtc(utcDate, localZone);
if (localZone.IsDaylightSavingTime(localTime))
localTime = localTime.AddHours(1); // is this needed !?
return localTime;
}
सवाल यह है कि, डीएसटी की संभाल TimeZoneInfo.ConvertTimeFromUtc()
करता है या आप अपने आप को कि जाँच और या तो जोड़ सकते हैं या तारीख वस्तु के लिए एक्स घंटे (रों) घटाना है ? जब ToUniversalTime()
साथ यूटीसी प्रारूप करने के लिए यह परिवर्तित करके डेटाबेस के लिए एक तिथि वस्तु बने के लिए
एक ही सवाल।
आपका समय क्षेत्र शायद डीएसटी उपयोग कर रहा है अभी, जो अपने परीक्षण वास्तव में क्या करने के लिए आसान कर देगा;) –
हां। चाहे किसी विशेष लोकेल में डीएसटी प्रभावी है, स्थानीय राजनीतिक निर्णय है। एक वेब सर्वर पर आप कभी भी पर्याप्त नहीं जानते हैं। हमेशा ब्राउजर में रूपांतरण करें, यह जानता है। –
@AndrewMorton, सच है, और मैंने क्लाइंट से दिए गए समय से 2 घंटे घटाया था। लेकिन इसके विपरीत कैसे? क्या आप कह रहे हैं कि मुझे ज़ोन में उस समय को कनवर्ट करने की ज़रूरत नहीं है जिसे उपयोगकर्ता सर्वर पर है? – Quoter