我在下面有这个对象,我正在尝试正确标记它以从 xml 反序列化。它正在使用 WCF。
[DataContract(Name="Task")]
public partial class Task
{
[DataMember]
public string prop1
{ get; set; }
[DataMember]
public ChildrenProps ChildProp1{ get; set; }
}
[DataContract]
public partial class ChildrenProps
{
[DataMember]
public ConfigurationSettings Prop1
{ get; set; }
[DataMember]
public ConfigurationSettings Prop2
{ get; set; }
}
[DataContract]
public partial class ConfigurationSettings
{
[DataMember]
public string Value
{ get; set; }
}
这是 XML。
<Task>
<prop1>aaaaa</prop1>
<ChildProp1>
<Prop1>bbbbbb</Prop1>
<Prop2>cccccc</Prop2>
</ChildProp1>
</Task>
我正在使用这种方法进行反序列化
public T Deserialization<T>()
{
var reader = new StringReader(configuration);
var serializer = new XmlSerializer(typeof(T));
var instance = (T)serializer.Deserialize(reader);
return instance;
}
它不适用于子元素并在对象中返回 null,但适用于其他所有元素。正确标记此内容的任何帮助将是一个很大的帮助。