Czy istnieje sposób debugowania klauzuli VB.NET With w Visual Studio?

Czasami nie zależy ci na nazwie zmiennej, ponieważ nie wykracza ona poza zakres twojego subwoofera. W rzeczywistości podanie nazwy spowoduje dodanie dodatkowej linii kodu. Również teraz masz do czynienia z tą nazwą, co może przyczynić się do zwiększenia wysiłku związanego z refaktoryzacją (jeśli zdecydujesz się później zmienić jej nazwę). Spójrz na poniższy kod:

Dim fileInfo As New FileInfo("filename.txt")
With New FileSystemWatcher
  .Path = fileInfo.DirectoryName
  .Filter = fileInfo.Name
  .EnableRaisingEvents = True
  AddHandler .Changed, AddressOf OnChanged
End With

Jest to doskonale sprawdzona konstrukcja VB.NET, która wygląda schludnie i czysto. Jednakże, jeśli chodzi o debugowanie i zakładając, że umieściłeś punkt przerwania wewnątrzWith klauzula, nie ma możliwości, aby to odebrać.Path aby upewnić się, że został prawidłowo ustawiony.

Czy brakuje mi tutaj czegoś lub czy Visual Studio naprawdę nie zapewnia debugowania.Property wewnątrz składniWith sprawozdania? Używam 2010.

Oczywiście w powyższym kodzie nie ma zbyt wiele do debugowania, ale może być wiele przykładów, kiedy takie sąbezimienny With podejście przydałoby się.

BTW, nazwanyWith klauzule mają ten sam problem, tj. gdybym miał napisać:

Dim fsw As New FileSystemWatcher
With fsw
  .Path = fileInfo.DirectoryName
  .Filter = fileInfo.Name
  .EnableRaisingEvents = True
  AddHandler .Changed, AddressOf OnChanged
End With

Nadal nie mogę wyciągnąć wartości.Path, muszę zawsze poprzedzać gofsw.

Problem rośnie wraz z gniazdowaniemWith klauzule w sobie nawzajem.

questionAnswers(2)

yourAnswerToTheQuestion