System.NonSerialized和System.Xml.Serialization.XmlIgnore属性似乎是起作用的,但它们之间有什么区别呢?似乎我们可以在类的属性或字段上使用XmlIgnore。但是NonSerialized只能在字段中使用。是否有任何理由不使用XmlIgnore在每一种情况下,如果是的话,NonSerialized属性的目的是什么,为什么在用法上有差异?这是允许的:Public Foo As String
<System
对于序列化,Element类应该在每个属性之前都有[XmlIgnore],但是Display类没有。public class Element [Browsable(false)] public Brush BackgroundBrush { getBackgroundBrush { get; set; }{
// what to write here, to achieve X
在我的应用程序中,我需要一个系统,其中显示给用户的一些消息有一个“不要再次显示”复选框。在“设置”菜单中,我希望有一个包含消息名称和复选框的“拒绝消息”部分,以便用户可以在需要时取消它们。如果消息被拒绝,在消息对话框中选择的最后一个用户应该成为默认用户。消息类定义为: Public Property title As String Public
在这个例子中:{ [XmlIgnore]
public int exampleNumber;XmlIgnore属性实际上做了我所期望的事情;它阻止了被引用项的序列化。因此,进一步尝试,我将"exampleNumber“的XmlIgnore声明替换为NonSerializable,希望得到类似的结果,但输出没有改变。在搜索资源之后,声明应该只在字段上使用NonSerializable属性,在属性上应该使用XmlIgn