Как получить переменную вне цикла? - PullRequest
0 голосов
/ 04 сентября 2011

У меня есть это:

 countReader = command7.ExecuteReader();
 while (countReader.Read())
 {
    string countName = countReader["count(*)"].ToString();                
 }

Как получить countName строки вне цикла while?

Ответы [ 3 ]

1 голос
/ 04 сентября 2011

Вы можете объявить его во внешней области видимости:

countReader = command7.ExecuteReader();
string countName = "";
while (countReader.Read())
{
    countName = countReader["count(*)"].ToString();                
}
// you can use countName here

Обратите внимание, что поскольку вы перезаписываете его значение на каждой итерации, вне цикла вы получите его значение из последней итерации или пустую строку, еслицикл не выполняется.

1 голос
/ 04 сентября 2011

Если вы хотите получить доступ к переменной вне цикла while, вы должны объявить ее снаружи как это

countReader = command7.ExecuteReader();
string countName = String.Empty;

 while (countReader.Read())
 {
  countName = countReader["count(*)"].ToString();                
 }
0 голосов
/ 04 сентября 2011
string countName;
countReader = command7.ExecuteReader();
while (countReader.Read())
{
   countName = countReader["count(*)"].ToString();                
}

Область будет означать, что она все еще доступна после выхода из цикла.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...