जवाबों:
मैं हमेशा आईएसओ 8601 प्रारूप (जैसे 2008-10-31T15:07:38.6875000-05:00
) का उपयोग करता हूं - date.ToString("o")
। यह XSD तिथि प्रारूप भी है। यह पसंदीदा प्रारूप और एक मानक दिनांक और समय प्रारूप स्ट्रिंग है , हालांकि यदि आप तिथि और समय के बीच 'टी' नहीं चाहते हैं तो आप एक मैनुअल प्रारूप स्ट्रिंग का उपयोग कर सकते हैं:date.ToString("yyyy-MM-dd HH:mm:ss");
संपादित करें: यदि आप एक एक्सएसडी या वेब सेवा से उत्पन्न वर्ग का उपयोग कर रहे हैं, तो आप सीधे कक्षा संपत्ति को डेटटाइम उदाहरण दे सकते हैं। यदि आप XML टेक्स्ट लिख रहे हैं, तो उपरोक्त का उपयोग करें।
EDIT: यह बुरी सलाह है। "ओ" का उपयोग करें, जैसा कि ऊपर। "s" गलत काम करता है ।
मैं हमेशा इसका उपयोग करता हूं:
dateTime.ToUniversalTime().ToString("s");
यदि आपका स्कीमा इस तरह दिखता है तो यह सही है:
<xs:element name="startdate" type="xs:dateTime"/>
जिसके परिणामस्वरूप होगा:
<startdate>2002-05-30T09:00:00</startdate>
आप यहाँ अधिक जानकारी प्राप्त कर सकते हैं: http://www.w3schools.com/xml/schema_dtypes_date/asp
यदि आप मैन्युअल रूप से XML स्ट्रिंग का उपयोग कर रहे हैं, तो var.ToUniversalTime().ToString("yyyy-MM-dd'T'HH:mm:ss.fffffffZ"));
यह आधिकारिक XML दिनांक समय प्रारूप को आउटपुट करेगा। लेकिन आपको प्रारूप के बारे में चिंता करने की ज़रूरत नहीं है यदि आप अंतर्निहित क्रमांकन विधियों का उपयोग करते हैं।
DTD का क्या कहना है?
यदि XML फ़ाइल अन्य मौजूदा सॉफ़्टवेयर (जैसे, SOAP) के साथ संचार करने के लिए है, तो उस सॉफ़्टवेयर की जाँच करें जो यह अपेक्षा करता है।
यदि XML फ़ाइल गैर-मौजूदा सॉफ़्टवेयर के साथ क्रमांकन या संचार के लिए है (जैसे, आप जो लिख रहे हैं), आप इसे परिभाषित कर सकते हैं। किस मामले में, मैं कुछ सुझाव दूंगा जो आपकी पसंद की भाषा (भाषा) में पार्स करने के लिए आसान है, और मनुष्यों के लिए पढ़ने में आसान है। उदाहरण के लिए, यदि आपकी भाषा (चाहे VB.NET या C # .NET या जो भी हो) आपको ISO तिथियों (YYYY-MM-DD) को आसानी से पार्स करने की अनुमति देती है, तो मैं यही सुझाव दूंगा।
XmlConvert
वर्ग सुविधाओं के इन प्रकार प्रदान करता है। डेटटाइम्स के बारे में, विशेष रूप से, अप्रचलित तरीकों के बारे में सावधान रहें। इसे भी देखें: https://stackoverflow.com/a/7457718/1288109