c# - Why is DateTime.TryParse making my number into a Date? -
विस्तार विधि
सार्वजनिक स्थिर वर्ग DBNullExt {सार्वजनिक स्थिर स्ट्रिंग DBNToString (यह ऑब्जेक्ट मान) {If (value == System.DBNull.Value) वापसी नल; Else {string val = value.ToString (); दिनांक समय परीक्षण; यदि (डेटटाइम.TryParse (वैल, आउट टेस्ट)) वापसी परीक्षा। ToShortDateString (); अन्य वापसी वैल; }}}
का उपयोग करते हुए
का उपयोग कर (SqlDataReader rdr = cmd.ExecuteReader ()) {if (rdr.HasRows) {while (rdr। पढ़ें ()) {dtf.Date1 = rdr ["date1"]। डीबीएनटीओस्ट्रिंग (); Dtf.Date2 = rdr ["date2"]। डीबीएनटीओस्ट्रिंग (); Dtf.Cash = rdr ["नकद"]। डीबीएनटीओस्ट्रिंग (); }}}
यह मान जो आरडीआर ["नकद"] से आता है। डीबीएनटीओस्ट्रिंग ()
3685.02 है लेकिन यह डेटा को 3685/2/1 में परिवर्तित करता रहता है यह ऐसा नहीं करना चाहिए था कि और मुझे यकीन नहीं है कि यह ऐसा क्यों कर रहा है। सार्वजनिक स्थैतिक स्ट्रिंग डीबीएनटीओस्ट्रिंग (यह ऑब्जेक्ट मान) {if (value) (
== प्रणाली.डिबिल। वैल्यू) वापसी नल; Else {string val = value.ToString (); दिनांक समय परीक्षण; स्ट्रिंग फ़ॉर्मेट = "MM / dd / yyyy h: mm: ss tt"; अगर (डेटटाइम.TryParseExact (वैल, प्रारूप, संस्कृति इन्फॉ .InvariantCulture, DateTimeStyles.None, बाहर परीक्षण)) वापसी परीक्षा। ToShortDateString (); अन्य वापसी वैल; }}}
एक स्ट्रिंग के रूप में, 3685.02
या 2014.10
एक स्वीकार्य तिथि टाइम प्रारूप है। स्ट्रिंग फॉर्म में केवल पर्स डेसटाइम के ऊपर कोड जो निर्दिष्ट प्रारूप का पालन करता है।
Comments
Post a Comment