Автоматический способ перемещения проекта Visual Studio в LINQPad?

Мне очень нравятся удивительные возможности LINQPAD (спасибо, Joseph Albahari!) и особенно метод LINQPad Dump. Часто я беру существующий проект Visual Studio и перемещаю его в LINQPad с единственной целью добавить пару операторов дампа, чтобы увидеть, как выглядят данные — хотя всплывающие окна данных Visual Studio, безусловно, полезны, вывод дампа просто намного легче усваивается. . Для этого я открываю каждый нужный мне файл из текущего проекта, копирую и вставляю отдельные классы в LINQPad, добавляю сборки и операторы использования, пытаюсь запустить, чтобы LINQPad сообщил мне, что я пропустил, и повторяю, пока не найду все сиротские ссылки.

Этот метод кажется несовместимым с элегантной, обтекаемой природой LINQPad. Есть ли более простой способ? Есть ли шанс увидеть «Импортировать проект» в меню «Файл» LINQPad в ближайшее время? Если нет, я могу в конечном итоге написать утилиту сам...


person Michael Sorens    schedule 10.11.2010    source источник
comment
Возможность добавить хотя бы ссылки из проекта VS имеет смысл. Я посмотрю на это и буду держать вас в курсе :)   -  person Joe Albahari    schedule 11.11.2010


Ответы (2)


Если вы просто хотите вызвать .Dump() в VS, проверьте это:

http://code.google.com/p/linqpadvisualizer/

Импорт всего проекта VS в LINQPad может оказаться нецелесообразным... но я собираюсь выяснить, можно ли легко скопировать только ссылки из .csproj.

person Joe Albahari    schedule 11.11.2010
comment
Вот оно. От самого Человека. - person Sorax; 11.11.2010
comment
Я ценю твой ответ, Джо. Ваш указатель здесь очень удобен и, по сути, очень своевременен для будущей статьи, которую я пишу для Simple-Talk.com. (Я уже упоминал LINQPad в двух или трех своих статьях как незаменимый инструмент!) Еще к вашему подразумеваемому вопросу: вызов Dump() — это одна из двух вещей, которые я хочу сделать, так что это удовлетворяет половину моих потребностей. Другая половина — действительно перенести проект на LINQPad, так как это более простая песочница, когда я хочу опробовать фрагменты кода. Я понимаю, что могут быть проблемы с этим, но я хотел подстегнуть ваш творческий потенциал!! - person Michael Sorens; 12.11.2010
comment
Просто хотел отметить, что я пытался использовать LinqPadVisualizer, но, похоже, он не работает в VS2010. Кто-то уже опубликовал ту же самую ошибку на форуме LinqPadVisualizer (code.google. .com/p/linqpadvisualizer/issues/detail?id=2), но ответа не последовало. И, как ни странно, на этом форуме нет временных меток, так что я не знаю, как давно эта проблема была опубликована! Я решил отправить прямое электронное письмо автору, чтобы узнать, есть ли какое-либо решение; Я сделаю репост, если получу дополнительную информацию. - person Michael Sorens; 13.11.2010
comment
Соответствующая статья, о которой я упоминал выше, была недавно опубликована на Simple-Talk.com: Раскрыты секреты LINQ: объединение в цепочки и отладка. В нем я обсуждаю полезные и практичные приемы работы с LINQ, LINQPad и LINQPad Visualizer. - person Michael Sorens; 20.01.2011

LINQPad великолепен, и я также иногда вручную импортирую проекты. Я не слышал, чтобы г-н Альбахари упоминал что-либо о функции «Импорт проекта». И я был бы удивлен, если бы он был заинтересован во внедрении чего-то подобного в ближайшее время.

Конечно, он очень восприимчив к предложениям, поэтому я рекомендую опубликовать вашу идею в его форум Nutshell, который он часто посещает.

Кроме того, проверьте TypeSerializer в библиотеках Service Stack. Я считаю, что его метод расширения Dump обернут LINQPad, который затем кодирует вывод в XHTML. Возможно, вам будет проще использовать его непосредственно в коде.

person Sorax    schedule 10.11.2010