Я пытаюсь преобразовать свои данные в DateTime
и AssumeUniversal
, но я получаю ошибкуПреобразовать в UTC время
Строка не была признана в качестве действительного DateTime
Это формат который передается в
1/10/2017 1:13:00 PM
Это мой Track Event класс
public partial class TrackEvent {
private System.DateTime timestampField;
private bool timestampFieldSpecified;
private string eventTypeField;
private string eventDescriptionField;
private string statusExceptionCodeField;
private string statusExceptionDescriptionField;
private Address addressField;
private string stationIdField;
private ArrivalLocationType arrivalLocationField;
private bool arrivalLocationFieldSpecified;
/// <remarks/>
public System.DateTime Timestamp {
get {
return this.timestampField;
}
set {
this.timestampField = value;
}
}
/// <remarks/>
[System.Xml.Serialization.XmlIgnoreAttribute()]
public bool TimestampSpecified {
get {
return this.timestampFieldSpecified;
}
set {
this.timestampFieldSpecified = value;
}
}
/// <remarks/>
public string EventType {
get {
return this.eventTypeField;
}
set {
this.eventTypeField = value;
}
}
/// <remarks/>
public string EventDescription {
get {
return this.eventDescriptionField;
}
set {
this.eventDescriptionField = value;
}
}
/// <remarks/>
public string StatusExceptionCode {
get {
return this.statusExceptionCodeField;
}
set {
this.statusExceptionCodeField = value;
}
}
/// <remarks/>
public string StatusExceptionDescription {
get {
return this.statusExceptionDescriptionField;
}
set {
this.statusExceptionDescriptionField = value;
}
}
/// <remarks/>
public Address Address {
get {
return this.addressField;
}
set {
this.addressField = value;
}
}
/// <remarks/>
public string StationId {
get {
return this.stationIdField;
}
set {
this.stationIdField = value;
}
}
/// <remarks/>
public ArrivalLocationType ArrivalLocation {
get {
return this.arrivalLocationField;
}
set {
this.arrivalLocationField = value;
}
}
/// <remarks/>
[System.Xml.Serialization.XmlIgnoreAttribute()]
public bool ArrivalLocationSpecified {
get {
return this.arrivalLocationFieldSpecified;
}
set {
this.arrivalLocationFieldSpecified = value;
}
}
}
И это, как я пытаюсь вызвать преобразование:
TrackEvent currMax = new TrackEvent();
currMax.Timestamp = DateTime.MinValue;
foreach (TrackEvent trackevent in trackDetail.Events)
{
if (trackevent.TimestampSpecified && trackevent.Timestamp > currMax.Timestamp)
{
currMax = trackevent;
var formats = new[]
{
"MM/dd/yyyy hh:mm tt",
"MM/dd/yyyy hh:mmtt",
"MM/dd/yyyy h:mm tt",
"MM/dd/yyyy h:mmtt",
"MM/dd/yyyy hhtt",
"MM/dd/yyyy htt",
"MM/dd/yyyy h tt",
"MM/dd/yyyy hh tt",
"MM/dd/yyyy HH:mm:ss.fff",
"MM/dd/yyyy h:mm:ss tt"
};
DateTime time = DateTime.ParseExact(currMax.Timestamp.ToString(), formats, System.Globalization.CultureInfo.InvariantCulture,
System.Globalization.DateTimeStyles.AssumeUniversal | System.Globalization.DateTimeStyles.AdjustToUniversal);
Console.WriteLine(time);
}
}