C# does not provide IsDate() function. Sometimes in your developer environment region settings are different from the live environment. In my case, I don’t know what region settings there are in my company servers.
For this reason, I created a function to check is a string is a date in a culture and to convert a string to a date.
////// Determines whether the specified text is date. /// /// The text. ////// public static bool IsDate(this string text) { if (!string.IsNullOrEmpty(text)) { DateTime result = DateTime.MinValue; foreach (CultureInfo cultureInfo in CultureInfo.GetCultures(CultureTypes.AllCultures)) { try { if (DateTime.TryParse(text, cultureInfo, DateTimeStyles.None, out result)) return true; } catch (Exception ex) { } } } return false; } ///true if the specified text is date; /// otherwise,false . ////// To the date. /// /// The text. ///System.Nullable<DateTime>. public static DateTime? ToDate(this string text) { if (!string.IsNullOrEmpty(text)) { DateTime result = DateTime.MinValue; foreach (CultureInfo cultureInfo in CultureInfo.GetCultures(CultureTypes.AllCultures)) { try { if (DateTime.TryParse(text, cultureInfo, DateTimeStyles.None, out result)) return result; } catch (Exception ex) { } } } return null; }
Happy coding!
You must log in to post a comment.