Can';t忽略UWP(C#)中的数据成员
我需要将包含Can';t忽略UWP(C#)中的数据成员,c#,serialization,uwp,C#,Serialization,Uwp,我需要将包含StorageFile(无法序列化的类)的类序列化为属性。尽管我将该属性标记为[IgnoreDataMember],XmlSerializer会一直尝试对其进行序列化,但这并不是预期的 澄清问题的一个片段: [DataContract] public class Attachment { [DataMember] public string FileName { get; set; } [IgnoreDataMember] public Storag
StorageFile
(无法序列化的类)的类序列化为属性。尽管我将该属性标记为[IgnoreDataMember]
,XmlSerializer
会一直尝试对其进行序列化,但这并不是预期的
澄清问题的一个片段:
[DataContract]
public class Attachment
{
[DataMember]
public string FileName { get; set; }
[IgnoreDataMember]
public StorageFile File { get; set; }
[DataMember]
public Boolean UserCreatedContent { get; set; }
}
尝试改用
XmlIgnoreAttribute
属性看起来您稍微混合了XmlSerializer
和DataContractSerializer
。是控制DataContractSerializer
的属性,但您使用的是XmlSerializer
。这意味着这些属性没有意义,因为序列化程序与您在中看到的不同
要使用XmlSerializer
控制序列化,您应该查看。这意味着您不需要太多属性,只需使用XmlSerializer
在序列化过程中使用一次XmlIgnore
即可忽略属性
public class Attachment
{
public string FileName { get; set; }
[XmlIgnore]
public StorageFile File { get; set; }
public Boolean UserCreatedContent { get; set; }
}
如果使用的是
XmlSerializer
public class Attachment
{
public string FileName { get; set; }
[XmlIgnore]
public StorageFile File { get; set; }
public Boolean UserCreatedContent { get; set; }
}
谢谢你的解释性回答!以上所有答案都解决了这个问题,但这也回答了为什么。谢谢你的回答!这解决了问题