Я могу подключить отладчик и заставить его сломаться, но у него проблемы с поиском файла .cs, я думаю, что LinqPad удаляет его как часть своей сборки. 8-(
Как отладить запрос LinqPad в отладчике Visual Studio?
comment
Обратите внимание, что после того, как был задан этот вопрос, Linqpad представила новую премиум-версию Linqpad, которая включает собственный отладчик.
- person Brian   schedule 22.04.2015
Ответы (3)
Если вы позвоните
Debugger.Launch();
Debugger.Break();
чтобы инициировать точку останова в сценарии LINQPad, LINQPad догадается, что вы хотите использовать VS для отладки сценария, и не будет удалять файл .cs.
person
Joe Albahari
schedule
06.04.2011
Я только что еще раз попробовал программу на C#, подобную этой 'code'void Main() { Debugger.Launch(); интервал я = 0; Отладчик.Перерыв(); я.Дамп(); } 'code' VS запускает не в состоянии найти код. НО затем снова запустив LP, VS, затем найдите файл .cs....
- person Mesh; 06.04.2011
У меня были проблемы с этим, а затем я понял, что пытаюсь подключить отладчик VS 2008 к LINQPad.exe; это должна быть версией VS, поддерживающей .NET 4+ (например, VS 2012).
- person Cᴏʀʏ; 01.06.2015
- Запустите LINQPad
- В VS откройте Debug -> Attach to Process...
- Выберите LINQPad.exe
- Установите точку останова в коде, вызываемом кодом LINQPad C#, или напишите Debugger.Break() в сценарии LINQPad, где вы хотите, чтобы отладчик остановился.
- Запустите скрипт из LINQPad и наблюдайте за волшебством.
person
jornhd
schedule
04.04.2012
Вы должны проверить свойство Debugger.IsAttached перед вызовом Debugger.Break().
- person Tormod; 30.09.2013
Если ваш код LINQPad вызывает метод в какой-либо сборке C#, на которую ссылаются, и вы хотите отладить эту сборку в Visual Studio 2015, это сработало для меня:
- Создайте свое решение.
- При необходимости запустите сценарий LINQPad, дождитесь сбоя и т. д. В нижней правой строке состояния LINQPad обратите внимание на PID, выделенный голубым цветом.
- В VS CTRL+ALT+P для присоединения к процессу. Присоединитесь к процессу LINQPad UserQuery с помощью PID, который вы видели.
- Поместите точку останова здесь, в VS.
- Запустите запрос linqpad и перейдите в VS. Вы должны попасть в точку останова!
person
Chris
schedule
11.03.2016