public static DateTime ParseDateTime(string s, ComplianceTracker tracker) { int length = s.Length; if (length < 15) { tracker.SetComplianceStatus(ComplianceStatus.InvalidValueFormat, CalendarStrings.InvalidDateTimeLength); return(ContactCommon.MinDateTime); } string text = "yyyyMMdd"; int num = 8; if (s[4] == '-') { text = "yyyy-MM-dd"; num = 10; } if (s[num + 3] == ':') { text += "\\THH:mm:ss"; num += 9; } else { text += "\\THHmmss"; num += 7; } if (length < num) { tracker.SetComplianceStatus(ComplianceStatus.InvalidValueFormat, CalendarStrings.InvalidDateTimeLength); return(ContactCommon.MinDateTime); } return(ContactCommon.InternalParseDateTime(s, length, text, num, tracker)); }
public static DateTime ParseTime(string s, ComplianceTracker tracker) { int length = s.Length; if (length < 6) { tracker.SetComplianceStatus(ComplianceStatus.InvalidValueFormat, CalendarStrings.InvalidDateTimeLength); return(ContactCommon.MinDateTime); } string format = "HHmmss"; int num = 6; if (s[2] == ':') { format = "HH:mm:ss"; num = 8; } if (length < num) { tracker.SetComplianceStatus(ComplianceStatus.InvalidValueFormat, CalendarStrings.InvalidDateTimeLength); return(ContactCommon.MinDateTime); } return(ContactCommon.InternalParseDateTime(s, length, format, num, tracker)); }