string Tipinde Gelen Türkçe Tarihi DateTime Tipine Çevirmek

Araştırmak neredeyse yarım günümü alan bir sorunumu sizlerle paylaşmak istedim.

Üstünde çalıştığım projede, string tipinde gelen ve de formatı “dd MM yyyy DD” tarihi DateTime tipine çevirmem gerekiyordu. Tipini değiştirmem için Parse fonksiyonunu kullanmam lazım ama tarihin culture bilgisi olmadan gelen tarihi algılaması mümkün olmuyor. Aşağıdaki gibi bir fonksiyon ile çözdüm.

public static DateTime StrLongDateToDateTime(string date)
            {
                DateTime dateTime = new DateTime();
#if DEBUG
                try
                {
#endif
                    if (!string.IsNullOrEmpty(date))
                    {
                        string myTime = DateTime.Parse(date).ToString(CultureInfo.GetCultureInfo("tr-TR").DateTimeFormat.ShortDatePattern);
                        dateTime = DateTime.Parse(myTime);
                    }
#if DEBUG
                }
                catch (Exception ex)
                {
                    Elmah.ErrorSignal.FromCurrentContext().Raise(ex);
                }
#endif
                return dateTime;
            }

 

Bir Cevap Yazın