试图用linq输出一个答案

我一直在用一个名为“SeqID”的标识符来连接两个数组,并输出一个CSV文件的答案。

每当我把这个答案输出到一个文件中,它就会打印出相同的答案,然后最后移到下一个答案,并打印出一堆线,等等。 我认为循环中可能存在问题,但我没有看到。 这里是代码…

private void executeBtn_Click(object sender, EventArgs e) { //NET OIL VARIANCE MATHEMATICS if (netOilRadBtn.Checked) { using (var sw = new StreamWriter("testNetOil.csv")) { var items = netOil.Zip(seqNum, (oil, seq) => new { Oil = oil, Seq = seq }); var items2 = netOil2.Zip(seqNum2, (oil, seq) => new { Oil = oil, Seq = seq }); sw.WriteLine("Lease Name, Field Name, Reservoir, Operator, County, ST, Majo, Resv Cat, Discount Rate, Net Oil Interest, Net Gas Interest, Working Interest, Gross Wells, Ultimate Oil, Ultimate Gas, Gross Oil, Gross NGL, Gross Gas, Net Oil, Net Gas, Net NGL, Revenue To Int., Oper. Expense, Total Invest., Revenue Oil, Revenue Gas, Operating Profit, Revenue NGL, Disc Net Income, SEQ, Well ID, INC ASN, Life Years, Own Qual, Production Tax, NET OIL VARIANCE"); foreach (var item in items.Join(items2, i => i.Seq, i => i.Seq, (a, b) => new {SeqID = a.Seq, Answer = this.GetTheAnswer(Convert.ToDouble(a.Oil), Convert.ToDouble(b.Oil)) })) { foreach (var s in item.SeqID) { sw.WriteLine(item.Answer); } 

基本上我想要这个代码实现的只是打印出两个不同数组中匹配seqNum的一个答案

 foreach (var s in item.SeqID) 

你循环SeqID每个char 。 我无法想象这是有用的。 只要删除循环,只做sw.WriteLine(item.Answer)