簡體   English   中英

如何在 XElement (XML Serializer) 內部添加 if 條件

[英]How to add if condition in inside XElement (XML Serializer)

var xmlfromLINQ = new XElement("BarList",
            from c in BarList 
            select new XElement("Bar",
                new XElement("Property1", c.Property1),
                new XElement("Property2", c.Property2)
             ));

如何在 XElement 屬性中添加條件。 因為某些屬性為空,如果我的屬性為空,則會出現錯誤。 所以我需要添加條件 if(c.Property1!=null) 得到 c.Property1 else 返回語句。 如何添加。

我會嘗試兩種方法:

  1. 不要嵌套如果您正在苦苦掙扎,在單獨的行中創建所有元素並將它們分配給變量通常是一個好習慣。 最后,您使用您創建的變量組裝您的結構。 這可能不漂亮,也不被認為是優雅的,但它可讀且易於調試。 所以每當我開始做一些新的事情時,我都會使用這種方法,直到我真正了解正在發生的事情。 使它漂亮並縮短它是第二步。

  2. 使用函數將需要條件的部分分解為返回“Bar”元素的輔助函數。 您可以添加屬性檢查,然后決定如何組裝對象。

可能有一種更優雅的方法來做到這一點,但其中任何一種都可以讓您解決問題。

暫無
暫無

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

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