【发布时间】:2012-07-04 08:41:05
【问题描述】:
我有多个嵌套的 foreach 循环进行一些处理,如何将此表达式转换为 Linq?
slug.Text = "";
foreach (var script in slugItem.script) {
foreach (var body in script.body) {
foreach (var vo in body.vo) {
foreach (var content in vo.content) {
foreach (var text in content.text) {
slug.Text = string.Format("{0}\n{1}", slug.Text, text.Value);
} } } } }
【问题讨论】:
-
出于好奇...为什么?除了嵌套循环的数量之外,这段代码有什么本质上的问题?从更“干净的代码”的角度来看,我可能会用嵌套的函数调用替换这些循环,这样顶级代码只需要调用一个函数。但除此之外,这是非常清晰易读的。
-
@AakashM 但它在每次重新分配中使用
slug.Text... -
string.format使用之前的slug.Text值,因此所有循环迭代对于最终结果都很重要 -
@MarcinJuraszek,显然我错过了我的第一个(现已删除)答案。