例如,这是XML:
<Person> <Title>Mr</Title> <Fullname>John Smith</Fullname></Person>
这是班级:
[XmlRoot("Person")]public sealed class PersonObject{ [XmlElement("Title")] public string namePrefix { get; set; } [XmlElement("Fullname")] public string Fullname { get; set; } [XmlElement("JobTitle")] public string JobTitle { get; set; }}
目前,如果我反序列化到此对象,JobTitle将设置为null.我希望将其设置为空字符串,就像我在XML中传递JobTitle一样,但将值设置为空.
是否可以使用序列化方法中的某种属性来执行此 *** 作?
解决方法 您可以使用具有默认值的支持字段来执行此 *** 作:private string jobTitle = "";[XmlElement("JobTitle")]public string JobTitle { get {return jobTitle;} set {jobTitle = value;} }
或者在默认构造函数中设置它:
public PersonObject(){ JobTitle = ""; namePrefix = ""; Fullname = "";}总结
以上是内存溢出为你收集整理的c# – XML反序列化缺少的元素全部内容,希望文章能够帮你解决c# – XML反序列化缺少的元素所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)