我有一个序列化和反序列化XML文件的任务。我已成功反序列化数据。但序列化时会出现问题。
我的示例XML输入文件如下所示:
<SampleXML>
<CTAG>
<CValue>100</Value1>
<CName>AB CORP</Value2>
</CTAG>
<Details>
<ValueA>200</ValueA>
<ValueB>BALANCE</ValueAB>
</Details>
</SampleXML>
在这里,我希望CTAG和细节会多次出现,具体取决于项目总数。 假设有两个项目,则XML文件应如下所示:
<SampleXML>
<CTAG>
<CValue>100</Value1>
<CName>AB CORP</Value2>
</CTAG>
<Details>
<ValueA>200</ValueA>
<ValueB>BALANCE</ValueAB>
</Details>
<CTAG>
<CValue>500</Value1>
<CName>BB HASH</Value2>
</CTAG>
<Details>
<ValueA>100</ValueA>
<ValueB>CREDITOR</ValueAB>
</Details>
</SampleXML>
这意味着CTAG和DETAILS标签会一个接一个地出现两次。
现在,我需要帮助为这些XML文件生成C#Model类。
到目前为止我设计的是:
public class SampleXML
{
public CTAG [] CTAG{get;set;}
public Details [] Details{get;set;}
}
public class CTAG
{
public String CValue {get;set;}
public String CName {get;set;}
}
public class Details
{
public String ValueA {get;set;}
public String ValueB {get;set;}
}
但是这个类为2个项目生成如下输出,这不是我想要的输出
<SampleXML>
<CTAG>
<CValue>100</Value1>
<CName>AB CORP</Value2>
</CTAG>
<CTAG>
<CValue>500</Value1>
<CName>BB HASH</Value2>
</CTAG>
<Details>
<ValueA>200</ValueA>
<ValueB>BALANCE</ValueAB>
</Details>
<Details>
<ValueA>100</ValueA>
<ValueB>CREDITOR</ValueAB>
</Details>
</SampleXML>