簡體   English   中英

LINQ to XML-動態元素選擇

[英]LINQ to XML - Dynamic Element Select

我正在編寫一個集成程序,該程序需要將XML文檔轉換為平面文件。 我下面有代碼靜態地命名應添加到平面文件中的元素。 我想做的是能夠傳遞某種類型的元素名稱列表,以便此方法可用於不同的集成。 元素名稱的此列表也將更改大小。 我想將其保留為單個表達式。 有任何想法嗎?

csv +=
            (from el in xmlDoc.Descendants("customer")
             select
                 String.Format("{0}|{1}|{2}|{3}{4}",
                     (string)el.Element("customer_num"),
                     (string)el.Element("customer_name"),
                     (string)el.Element("last_pmt_date"),
                     (string)el.Element("last_sale_date"),
                     Environment.NewLine
                 )
            )
            .Aggregate(
                new StringBuilder(),
                (sb, s) => sb.Append(s),
                sb => sb.ToString()
            );
List<string> names = (...)

csv +=
    (from el in xmlDoc.Descendants("customer")
     select String.Join("|", names.Select(x => (string)el.Element(x)))
    )
    .Aggregate(
        new StringBuilder(),
        (sb, s) => sb.AppendLine(s),
        sb => sb.ToString()
    );

暫無
暫無

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

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