私が実行しているテストでは、単純に .net オブジェクトを受け取り、それを json 文字列にシリアル化します。次に、その文字列を逆シリアル化して .net オブジェクトに戻そうとします。シリアル化されている文字列は問題ないように見えますが、何らかの理由で、int と DateTime の 2 つのプロパティで逆シリアル化が失敗しています。
使用されている .net プロパティは次のとおりです。
public string TokenString { get; set; }
public TokenUsage TokenUsage { get; set; }
public string TokenType { get; set; }
public string UserId { get; set; }
public DateTime Expires { get; private set; }
public int ExpiresIn { get; private set; }
そして、これはシリアル化されている json です。
{
"TokenString":"encryptedtoken",
"TokenUsage":300,
"TokenType":"Bearer",
"UserId":"myId",
"Expires":"2013-07-05T11:28:18.4179133Z",
"ExpiresIn":3600,
"IsExpired":false
}
そして、これがその文字列の逆シリアル化に続くインスペクターです。
ご覧のとおり、ほとんどすべてが良好です。トークンの使用法 (列挙型) も正しく逆シリアル化されているようです。シリアライズ/デシリアライズの領域では何も凝っていません。ただJsonConvert.Serialize(myObject)
とJsonConvert.Deserialize<MyObject>(jsonString)
何か案は?