Есть ли способ отладки VB.NET с предложением в Visual Studio?

Иногда вы на самом деле не заботитесь об имени переменной, потому что оно не выходит за рамки вашей подпрограммы. Фактически, указание имени добавит дополнительную строку кода. Также теперь у вас есть это имя, с которым вы можете иметь дело, что может увеличить потенциальные усилия по рефакторингу (если вы решите переименовать его позже). Посмотрите на код ниже:

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

Это совершенно правильная конструкция VB.NET, которая выглядит аккуратно и чисто. Однако, когда дело доходит до отладки и предполагается, что вы ставите точку останова внутриWith пункт, нет возможности захватить это.Path чтобы убедиться, что он был установлен правильно.

Я что-то здесь упускаю или Visual Studio действительно не обеспечивает отладку для.Property синтаксис внутриWith заявления? Я использую 2010.

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

Кстати, по имениWith у пунктов есть та же самая проблема, то есть, если я должен был написать:

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

Я до сих пор не могу получить значение.Path, всегда нужно префикс егоfsw.

Проблема растет в размерах, как вы гнездитесьWith пункты друг в друге.

Ответы на вопрос(2)

Ваш ответ на вопрос