internal static DateTime Convert(string value)
{
if (string.IsNullOrEmpty(value) || value == "$")
return DateTime.MinValue;
try
{
int year = int.Parse(value.Substring(0, 4)), month = int.Parse(value.Substring(5, 2)), day = int.Parse(value.Substring(8, 2));
if (value.Contains("T"))
{
int hour = int.Parse(value.Substring(11, 2)), min = int.Parse(value.Substring(14, 2));
double seconds = double.Parse(value.Substring(17, value.Length - 17));
return new DateTime(year, month, day, hour, min, (int)seconds);
}
return new DateTime(year, month, day);
}
catch (Exception) { }
DateTime result = DateTime.MinValue;
return (DateTime.TryParse(value, out result) ? result : DateTime.MinValue);
}