using System.Globalization;
public static void Main()
Console.WriteLine("Default culture: " + CultureInfo.CurrentCulture.Name);
Console.WriteLine("Parsed using default culture = " + DateTime.Parse("01-08-2014").ToString("u"));
Console.WriteLine("Parsed using UK-specific culture = " + ToDate("01-08-2014").ToString("u"));
public static DateTime ToDate(object readField)
DateTime dt = DateTime.MinValue;
readField = readField.ToString().Replace("/", "-");
System.Globalization.CultureInfo ukCulture = new System.Globalization.CultureInfo("en-GB");
if (DateTime.TryParseExact(readField.ToString(), new string[] { "dd-MM-yy hh:mm:ss", "dd-MM-yyyy hh:mm:ss", "dd-MM-yyyy", "d-M-yyyy", "d-M-yyyy h:mm:ss tt", "d-M-yyyy H:mm", "d-M-yyyy hh:mm tt" }, ukCulture.DateTimeFormat, System.Globalization.DateTimeStyles.None, out dt))