[英]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.