草庐IT

XmlIgnore

全部标签

c# - 你如何在 .NET Core 中执行 XmlIgnore?

有什么方法可以防止属性在.NETCore中被XML序列化(我们之前通常会使用[XmlIgnore]属性来做到这一点)? 最佳答案 XmlIgnore不在.net核心中(或者.net标准1.6,这可能更重要)。本页here在Github上声明.net标准2.0将包含XmlIgnore(您可以通过查看1.6和2.0之间的原始差异进一步检查here 关于c#-你如何在.NETCore中执行XmlIgnore?,我们在StackOverflow上找到一个类似的问题:

c# - XmlIgnore 不起作用

我有一个我正在尝试序列化的对象,输出看起来像这样:blabla其中Item是类根使用的类。[Serializable][XmlType("root")]publicclassRoot{}[Serializable][XmlInclude(typeof(Item))]publicclassItems{}[Serializable]publicclassItem{[XmlElement("Value")]publicstringDefaultValue{get;set;}}在某些情况下我想忽略value的值而我有这段代码varoverrides=newXmlAttributeOverrid

c# - 以编程方式在 c# 中添加 [XmlIgnore] 属性以进行序列化

这个问题在这里已经有了答案:CanattributesbeaddeddynamicallyinC#?(10个答案)关闭8年前。有谁知道如何以编程方式将[XmlIgnore]属性添加到C#中的类属性?我想这样做是为了让一个类只有一个或两个字段在运行时需要序列化。非常感谢。

c# - 忽略 XML 序列化中的空值

我有一段xml看起来像01123456AAAA如您所见,SubscriptionProductIdentifierType是一个集合,在本例中仅包含一项。如何忽略第二个空项?我尝试添加xml忽略,但它会删除整个集合,如果没有数据,我只想删除集合中的第二个项目。[System.Xml.Serialization.XmlIgnoreAttribute()]publicSubscriptionProductIdentifierType[]SubscriptionProductIdentifier{get{returnthis.subscriptionProductIdentifierFiel

c# - 可以使用 XmlAttributes 有选择地 XmlIgnore 吗?

我有一个相当大的类要序列化为Xml,为了减少空间浪费,我想有选择地XmlIgnore一些类属性。例如,类中的一个属性被赋值的次数只有十分之一左右,如果我将序列化属性编码如下[XmlAttribute]publicStringWorkClass{get{return_workClass;}set{_workClass=value;}}如果没有值(大部分时间),它会一遍又一遍地序列化为WorkClass=""是否有一个选项或属性可以在其值为空时忽略该属性进行序列化,但如果它不为空则不忽略它? 最佳答案 您可以为每个不希望序列化的值创建方

c# - 如何忽略 [XMLIgnore] 属性

我正在尝试将从第3方.NETLib获得的一些对象序列化为XML文件。当我为对象GoToDefinition时,该对象的一些属性被标记为[XMLIgnore]有什么方法可以告诉我的System.Xml.Serialization.XmlSerializer忽略某些属性具有该属性并且它应该序列化对象中的所有内容这一事实。我可能可以获取源代码并在没有XMLIgnore属性的情况下重新编译它,但是如果XmlSerializer有一些不错的覆盖属性就好了,比如XmlSerializerxmls=newXmlSerializer(typeof(MyObject),Settings.DoNotApp

c# - 在 .NET JSON 序列化期间忽略字段;类似于 [XmlIgnore]?

我有一个POCO类,它作为.NET3.5sp1中的JSON字符串发送到浏览器。我只是使用默认的JSON序列化,并且有一些我想忽略的字段。我想在它们上面放一个类似于[System.Xml.Serialization.XmlIgnore]的属性,这样它们就不会被序列化了。 最佳答案 我使用ScriptIgnore我的模型上的属性如下:publicclassItem{[ScriptIgnore]publicItemParentItem{get;set;}}在这个特定的场景中,我从Json序列化程序中得到了一个循环引用错误,所以我只是忽略了