我正在编写一个需要将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()
);
答案 0 :(得分:0)
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()
);