मैं एक आवेदन जो एसक्यूएल से डेटा पढ़ सकते हैं और एक ग्राहक अनुप्रयोग के लिए WCF के माध्यम से भेज, एक तरह से इस के समान में होता है:डेटासेट कैसे करें। डेटटाइम मानों को डेटटाइमकिंड.यूटीसी पर डिफॉल्ट करने के साथ भरें?
SqlDataAdapter da = new SqlDataAdapter(cmd)
DataSet ds = new DataSet();
da.Fill(ds);
return ds;
सभी दिनांक/समय UTC के रूप में डेटाबेस में संग्रहीत हैं। मैंने जो देखा वह यह है कि अगर आवेदन चलाने वाले कंप्यूटर पर घड़ी खराब हो जाती है, तो ग्राहकों द्वारा प्राप्त तिथि/समय भी कम हो जाएगा। ऐसा लगता है कि जब डेटटाइम प्रकार अनिर्दिष्ट प्रकार का होता है, तो डब्ल्यूसीएफ स्थानीय रूप से स्थानीय समय के रूप में इसका प्रतिनिधित्व करेगा, और इस तरह के रूप में भेज देगा, इसलिए आवेदन और ग्राहक के बीच किसी भी समय अंतर स्थानांतरित करने के लिए दिनांक/समय का कारण बन जाएगा।
मैं निश्चित रूप से डेटासेट के माध्यम से जा सकता हूं क्योंकि उन्हें पुनर्प्राप्त किया जाता है और दिनांक/समय फ़ील्ड को ठीक किया जाता है, लेकिन क्या कोई यहां डेटासेट भरने के लिए कुछ बेहतर तरीका सोचता है, ताकि प्रत्येक डेटटाइम फ़ील्ड स्वचालित रूप से डेटटाइमकिंड.यूटीसी पर दाफिल पर हो।()?
"सेटसेटटाइम = डेटासेटडेटटाइम सेट करें। डेटासेट भरने के बाद प्रश्न में डेटा कॉलम के लिए निर्दिष्ट" पूरी तरह से काम किया। धन्यवाद! – galets
शांत, मदद करने में खुशी हुई। –
JSON- स्वरूपित दिनांक समय मानों में भेजे गए ऑफ़सेट को निकालने के लिए, 'DateTimeMode = DataSetDateTime.Utc' सेट करें। – Suncat2000