你能解释一下为什么这两个函数的输出对于相同的数据是不同的吗?
我希望它们产生相同的输出,即附加行。如何更改替代 1 以添加行?
(后台Measurements
实现ICollection<>
)
备选方案 1
private void CreateBody(TestRun testRun, StringBuilder lines)
{
testRun.Measurements.OrderBy(m => m.TimeStamp)
.Select(m => lines.AppendLine(string.Format("{0},{1}", m.TestRound, m.Transponder.Epc)));
}
-> 没有输出/添加的行
备选方案 2
private void CreateBody2(TestRun testRun, StringBuilder lines)
{
foreach (Measurement m in testRun.Measurements.OrderBy(m => m.TimeStamp))
{
lines.AppendLine(string.Format("{0},{1}", m.TestRound, m.Transponder.Epc));
}
}
-> 为每个测量添加行