Tôi đang làm việc với một phản ứng như sau:Làm thế nào để deserialize ngày (mili giây) với JSON.NET?
{"id":"https://login.salesforce.com/id/00Dx0000000BV7z/005x00000012Q9P",
"issued_at":"1278448832702","instance_url":"https://na1.salesforce.com",
"signature":"0CmxinZir53Yex7nE0TD+zMpvIWYGb/bdJh6XfOH6EQ=","access_token":
"00Dx0000000BV7z!AR8AQAxo9UfVkh8AlV0Gomt9Czx9LjHnSSpwBMmbRcgKFmxOtvxjTrKW1
9ye6PE3Ds1eQz3z8jr3W7_VbWmEu4Q8TVGSTHxs"}
Tôi đang cố gắng để deserialize này vào một lớp học mà trông giống như:
public class TokenResponse {
public string Id { get; set; }
[JsonProperty(PropertyName = "issued_at")]
public DateTime IssuedAt { get; set; }
public string Signature { get; set; }
[JsonProperty(PropertyName = "instance_url")]
public string InstanceUrl { get; set; }
[JsonProperty(PropertyName = "access_token")]
public string AccessToken { get; set; }
}
Các cuộc gọi đến deserialize là khá đơn giản:
JsonConvert.DeserializeObject<TokenResponse>(response.Content);
Điều này dẫn đến một ngoại lệ:
Could not convert string to DateTime: 1278448832702.
Có cách nào tôi có thể nhận JSON.NET để deserialize ngày này chính xác không?
Đừng quên ghi đè 'CanWrite()' để trả về false. –
@BrianRogers Nó sẽ không gây hại gì cả trong quá trình deserialization .. – I4V
Để chính xác, bạn nên sử dụng hàm tạo 'DateTime' cho phép bạn chuyển' DateTimeKind.Utc'. –