0

我使用 xsd.exe 从我的 XML 响应中生成 .cs 文件。

在我的 XML 响应中,应用程序中不需要的元素很少,我想省略这些,所以我从响应 xml 文件中删除了它们并重新生成了 .cs 文件。

我使用这个 .cs 文件从我的 xml 服务器响应(具有那些不必要的元素)中反序列化,这会导致 System.InvalidOperationException。

请让我知道如何解析或反序列化服务器对仅具有所需属性的类的响应。

我为 Windows Phone 应用程序工作。

谢谢,卡维特。

4

1 回答 1

1

尝试使用属性装饰您不再需要的XmlIgnoreAttribute属性。

默认情况下,所有公共字段和公共读/写属性都由 XmlSerializer 序列化。也就是说,每个公共字段或属性的值都作为 XML 元素或 XML 属性保存在 XML 文档实例中。

要覆盖字段或属性的默认序列化,请创建一个 XmlAttributes 对象,并将其 XmlIgnore 属性设置为 true。将对象添加到 XmlAttributeOverrides 对象并指定包含要忽略的字段或属性的对象的类型,以及要忽略的字段或属性的名称。

http://msdn.microsoft.com/en-us/library/system.xml.serialization.xmlattributes.xmlignore.aspx

于 2013-09-30T12:11:13.840 回答