如何使用DataContractJsonSerializer序列化程序将用户的电子邮件对象作为类? [英] How to use DataContractJsonSerializer serializer the user emails object as class?
问题描述
HI
我的范围包括本文的电子邮件: http://msdn.microsoft.com/en-us/library/live/hh243648.aspx#user
My scope include Emails, by this article:http://msdn.microsoft.com/en-us/library/live/hh243648.aspx#user
我推断出Json结构会这样:
I infer the Json structure will like this:
{
" first_name":"",&b $ b " last_name":"",
"电子邮件":{
"preferred":"","&b $ b "personal":"","
"business":"","
"其他":""
},
{
"first_name": "",
"last_name": "",
"emails": {
"preferred": "",
"personal": "",
"business": "",
"other": ""
},
}
所以我使用两个这样的类:
So I use two class like this:
[DataContract]
公共类用户信息
{
[DataMember(Name =" id")]
$
公共字符串ID {get;组; }
[DataMember(Name =" emails")]
$
公共电子邮件电子邮件{get;设置;}
[DataMember(Name =" last_name")]
$
public string Name {get;组; }
[DataContract]
public class UserInformation
{
[DataMember(Name = "id")]
public string ID { get; set; }
[DataMember(Name = "emails")]
public Emails emails {get; set;}
[DataMember(Name = "last_name")]
public string Name { get; set; }
}
}
[DataContract]
公共课程电子邮件
{
[DataMember(Order = 0)]
public string Preferred {get;设置; }
[DataMember(Order = 1)]
$
public string Account {get;组; }
[DataContract]
public class Emails
{
[DataMember(Order = 0)]
public string Preferred {get; set; }
[DataMember(Order = 1)]
public string Account { get; set; }
[DataMember(Order = 2)]
$
public string个人{get;组; }
[DataMember(Order=2)]
public string Personal { get; set; }
[DataMember(Order = 3)]
public string Business {get;组; }
[DataMember(Order=3)]
public string Business { get; set; }
}
}
但是这样我只能得到ID和Name值,但是对于电子邮件,我得到的所有属性都为null!
But in that way I can only get ID and Name value but for emails, I get the class with all property=null!
什么我做错了?请帮助!
What I'm doing wrong? please help!
推荐答案
难道你不需要让Emails课程中的属性以小写字母开头吗?
Don't you just need to make the properties in the Emails class begin with lower case?
ie
public class Emails
{
public string preferred { get; set; }
public string account { get; set; }
public string personal { get; set; }
public string business { get; set; }
public string other { get; set; }
}
这篇关于如何使用DataContractJsonSerializer序列化程序将用户的电子邮件对象作为类?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!