簡體   English   中英

XmlSerializer:忽略元素的自定義屬性

[英]XmlSerializer: Custom attribute for ignore element

有沒有辦法讓XmlSerializer在不使用[XmlIgnore]的情況下忽略某些屬性?

我想要實現的目標:我想修改通用模型(在許多我不知道的地方使用),以使我的序列化器將忽略某些屬性; 但是現有的序列化器將以與現在相同的方式工作。

是的,您可以使用“ ShouldSerializeMyPropertyName”約定: https ://docs.microsoft.com/zh-cn/dotnet/framework/winforms/controls/defining-default-values-with-the-shouldserialize-and-reset-methods

public class Foo
{
    public string Bar { get; set; }

    public bool ShouldSerializeBar()
    {
        return false;
    }
}

可以將該方法設置為virtual方法,並由子類覆蓋,也可以根據需要進行驅動。

除此之外,您可以實現IXmlSerializable但我懷疑這可能比它對您的用例場景的價值更大。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM