Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
这两段json之间有什么区别_Json_Wcf - Fatal编程技术网

这两段json之间有什么区别

这两段json之间有什么区别,json,wcf,Json,Wcf,在我们重写系统以使用wcf服务之前,返回给客户端的json是: {"CreationDate":"2016-12-01T13:15:02.923+00:00","Email":"sagysad@dd.com","IsApproved":true,"IsLockedOut":false,"IsOnline":true,"LastActivityDate":"2017-03-31T00:13:21.333+01:00","LastLockoutDate":"1754-01-01T00:00:00+0

在我们重写系统以使用wcf服务之前,返回给客户端的json是:

{"CreationDate":"2016-12-01T13:15:02.923+00:00","Email":"sagysad@dd.com","IsApproved":true,"IsLockedOut":false,"IsOnline":true,"LastActivityDate":"2017-03-31T00:13:21.333+01:00","LastLockoutDate":"1754-01-01T00:00:00+00:00","LastLoginDate":"2017-03-31T00:13:21.113+01:00","LastPasswordChangedDate":"2099-12-31T00:00:00+00:00","ProviderName":"LoginProvider","ProviderUserKey":"dcc5f38f-f71e-4d9d-bdb2-58fb60b7a65e","UserName":"schoi","IsValidLogin":true}
但在将其作为wcf服务公开后,json已更改为:

{
    "SignInResult":
    {
        "CreationDate": "/Date(1480598102923+0000)/",
        "Email": "steven.choi@dasdada.com",
        "IsApproved": true,
        "IsLockedOut": false,
        "IsOnline": true,
        "IsValidLogin": true,
        "LastActivityDate": "/Date(1490916050417+0100)/",
        "LastLockoutDate": "/Date(-6816268800000+0000)/",
        "LastLoginDate": "/Date(1490916050417+0100)/",
        "LastPasswordChangedDate": "/Date(-2208988800000+0000)/",
        "ProviderName": "LoginProvider",
        "ProviderUserKey": "dcc5f38f-f71e-4d9d-bdb2-58fb60b7a65e",
        "UserName": "schoi"
    }
}
为什么我不能这么做

JsonConvert.DeserializeObject<SignInResult>((provider.SignIn(username,password))
JsonConvert.DeserializeObject((provider.sign(用户名、密码))
根据这一点,
DateTime
对象是:

…在JSON中表示为“/Date(记号数)/”。符号数 ticks是表示数字的正或负长值 自1月1日午夜以来经过的滴答声(毫秒), 协调世界时1970年

如果要使用newsoft反序列化,可以使用以下方法:

        JsonSerializerSettings settings = new JsonSerializerSettings
        {
            DateFormatHandling = DateFormatHandling.MicrosoftDateFormat,
            Formatting = Formatting.Indented
        };
JsonConvert.DeserializeObject<SignInResult>((provider.SignIn(username,password), settings )
JsonSerializerSettings设置=新的JsonSerializerSettings
{
DateFormatHandling=DateFormatHandling.MicrosoftDateFormat,
格式化=格式化。缩进
};
JsonConvert.DeserializeObject((provider.sign(用户名、密码)、设置)

请参阅:很高兴知道,但我已将其从ms更改为tuse datacontractserializer类