我试图了解为什么我得到以下的空值:
杰森:
{
"IdentityService": {
"IdentityTtlInSeconds": "90",
"LookupDelayInMillis": "3000"
}
}
班级:
public class IdentityService
{
public string IdentityTtlInSeconds { get; set; }
public string LookupDelayInMillis { get; set; }
}
致电:
_identityService = JsonConvert.DeserializeObject<IdentityService>(itemAsString);
实例化了该类,但IdentityTtlInSeconds和LookupDelayInMillis的值为空。我不明白为什么要这样
您还需要一个类-一个具有一个称为的属性的对象IdentityService
:
public class RootObject
{
public IdentityService IdentityService { get; set; }
}
您需要此类,因为您拥有的JSON具有一个称为的属性IdentityService
,而该对象具有两个名为IdentityTtlInSeconds
和的属性LookupDelayInMillis
。如果您使用默认的序列化程序,则您的类需要反映JSON字符串中的结构。
现在,您可以使用它来反序列化您的字符串:
var rootObject = JsonConvert.DeserializeObject<RootObject>(itemAsString);
_identityService = rootObject.IdentityService;
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句