đọc Xml thường mong đợi ngày/lần trong một định dạng rất cụ thể; bạn có thể sử dụng tự thực hiện bằng XmlConvert
:
string s = XmlConvert.ToString(DateTime.Now);
DateTime when = XmlConvert.ToDateTime(s);
Nếu bạn đang sử dụng cái gì khác, bạn sẽ phải đọc nó như là một chuỗi và sử dụng DateTime.TryParseExact
(hoặc tương tự) để xác định chuỗi định dạng thực tế:
string s = reader.ReadContentAsString();
DateTime when = DateTime.ParseExact(s, "M/d/yy hh:mm tt",
CultureInfo.InvariantCulture);
Nếu bạn đang sử dụng XmlSerializer
, bạn có thể sử dụng một tài sản shim để làm việc chuyển đổi - cho tôi biết nếu điều này là những gì bạn đang làm ...
Nguồn
2009-03-19 11:46:36
Dữ liệu tôi cho ăn xảy ra là 29/10/2012 15:25 và dữ liệu tôi đã không thành công. Khi tôi đổi nó thành 10/11/2012 15:25, nó đã hoạt động. –
@MarcGravell, khi tôi cố gắng deserialize một số nguồn cấp dữ liệu rss bằng cách sử dụng 'XmlSerializer',' PubDate' yếu tố gây ra lỗi. Làm thế nào tôi có thể sửa chữa nó? – burhan
@burhan bằng cách xem xét giá trị sẽ đến như thế nào và xử lý nó một cách thích hợp? Ngoài ra, khung cốt lõi bao gồm các lớp nhắm mục tiêu RSS có thể làm một công việc tốt hơn. –