C# 将xml元素和节点反序列化为字符串属性
我有以下xmlC# 将xml元素和节点反序列化为字符串属性,c#,xml,serialization,C#,Xml,Serialization,我有以下xml <Amendment.Text> <Page>4</Page> <Line>4</Line> <Bold>It is a </Bold> <Italic>Beautiful Day</Italic> <Bold>In London</Bold> <Italic>17 June 20
<Amendment.Text>
<Page>4</Page>
<Line>4</Line>
<Bold>It is a </Bold>
<Italic>Beautiful Day</Italic>
<Bold>In London</Bold>
<Italic>17 June 2015</Italic>
</Amendment.Text>
我能够反序列化页面
和行
,但无法获取
斜体
和粗体
带有标记的元素这可能不是:
<Amendment.Text>
<Page>4</Page>
<Line>4</Line>
<Content>CDATA(["
<Bold>It is a </Bold>
<Italic>Beautiful Day</Italic>
<Bold>In London</Bold>
<Italic>17 June 2015</Italic>
"])
</Content>
</Amendment.Text>
4.
4.
CDATA([”
这是一个
好天气
在伦敦
2015年6月17日
"])
不清楚您有什么问题,在AmdTextType
类中没有Italic
或Bold
属性。您是否使用XmlSerialier
?然后是你。这本可以解决问题,但我们无法控制xml格式。我认为你有问题了。我能想到的唯一方法是手动读取字符串,所有XML反序列化程序都将尝试将粗体和斜体行解析为标记,并将它们与IEnumerables匹配(如果幸运的话)
[Serializable]
public class AmdTextType
{
public string Page { get; set; }
public string Line { get; set; }
public string Content { get; set; }
}
<Amendment.Text>
<Page>4</Page>
<Line>4</Line>
<Content>CDATA(["
<Bold>It is a </Bold>
<Italic>Beautiful Day</Italic>
<Bold>In London</Bold>
<Italic>17 June 2015</Italic>
"])
</Content>
</Amendment.Text>