2016-04-15 6 views
0

Кодексапеременной скрывает переменную в вшита ошибке блока

Using m_objSqlConnection = New SqlCeConnection(m_strConnectionString) 

End Using 

производит следующее сообщение об ошибке:

Variable 'm_objSqlConnection' hides a variable in an enclosing block

+0

копия «m_objSqlConnection», Найти (ctrl + shift + f), вставить «m_objSqlConnection», нажать enter. Вы обнаружите, что m_objSqlConnection уже определено в той же области. – djv

ответ

1

«m_» префикс предполагает, что у вас есть переменная-член с таким именем. Когда вы используете оператор Using, вы объявляете переменную, которая существует только в области этого блока. Если у вас уже есть переменная-член с этим именем, зачем вам нужна локальная переменная с тем же именем? Вам нужно решить, подходит ли локальная переменная или переменная-член и придерживаться одной опции. Если вы удалите соединение в конце блока Using, вы, по-видимому, не будете его повторно использовать, поэтому я думаю, что избавление от переменной-члена - это путь.