У меня есть следующий код:
SqlDataReader reader = getAddressQuery.sqlReader;
while (reader.Read())
{
foreach (Object ob in reader)
{
someText.InnerText = someText.InnerText + " " + ob.ToString();
}
}
Код в цикле foreach не выполняется. Однако я могу это сделать:
SqlDataReader reader = getAddressQuery.sqlReader;
while (reader.Read())
{
someText.InnerText = reader[0].ToString();
}
Что работает.
Очевидно, я мог бы достичь того же результата, используя регулярный цикл, а не цикл foreach, но я думаю, что синтаксис foreach более ясен, поэтому я использую его, когда это возможно.
Что здесь случилось? Являются ли циклы foreach в С# не такими гибкими, как на языках более высокого уровня?