Regional settings, especially dates, are always a problem in code. For example, suppose the product is developed in U.S. and deployed in UK. Users entering dates in UK format would cause
DateTime.Parse exceptions (because the input would not be recognized as a valid
DateTime). The shortest fix for this problem is to use the
DateTimeFormatInfo object during parsing, as shown below:
System.Globalization.DateTimeFormatInfo MyDateTimeFormatInfo = new System.Globalization.DateTimeFormatInfo();
MyDateTimeFormateInfo.ShortDatePattern = "M/d/yyyy";
string StartDate = DateTime.Parse(dt.ToString("MM/dd/yyyy",MyDateTimeFormatInfo);
The preceding code should work for all short-date entries, regardless of the local machine settings.