如何打印在循环外的foreach循环中获得的值

时间:2015-09-16 06:57:34

标签: c# visual-studio-2010 foreach datatable

我在denom循环中找到numerforeach的值,我想用它们来查找average = numer/denom。但它显示错误:

  

这个名字' numer'在当前背景下不存在。

并且

  

名称' denom'在当前背景下不存在。

请查看代码并提出修复建议。

foreach (DataRow rw in dataTablebuy.Rows)
{
     int denom = 0;
     denom = denom + int.Parse(rw["Quantity"].ToString());
     int numer = 0;
     numer = numer + (int.Parse(rw["Quantity"].ToString()) * int.Parse(rw["price"].ToString()));

}
float avg = numer / denom;
Response.Write(String.Format("Element {0}", avg));

2 个答案:

答案 0 :(得分:3)

您必须在循环外声明变量。否则它不能在循环外使用(范围)。 我也在你的代码中改变了一些东西。您使用.set(),检查我是如何做到的。它的工作方式完全相同。

denom = denom + ...

答案 1 :(得分:1)

如果要在循环外使用变量,则需要在循环外声明它们。