2010-06-06 1 views
25

Я хотел бы использовать интерактивную консоль F # с проектами в текущем открытом решении в Visual Studio 2010. Есть быстрый и простой способ добавить ссылку в F # interactive консоль для ссылки на проекты в текущем открытом решении?F # interactive: Ссылка на проект в открывшемся в настоящее время решении

ответ

19

Если вы часто ссылаетесь на проект, вы можете добавить ссылку «всегда» в командную строку FSI, в разделе «Инструменты» - «Параметры» -> «F # Tools-> F #». Добавить ключ -r, как:

-r "C:\Users\yaddayadda\MyDll.dll" 
+0

), это отличный совет, спасибо вам большое спасибо! – Russell

18

Я не думаю, что есть прямой способ ссылки на проект в решении. Лучший способ я могу думать о том, чтобы добавить файл FSX где к вашему проекту с #r директивы:

#r @"bin\Debug\YourProject.dll" 

Затем вы можете по крайней мере ссылку на скомпилированный файл DLL просто нажав Alt + Enter в Visual Studio. Насколько я знаю, вы не можете ссылаться на проект - вы можете ссылаться только на сборку.

В настоящее время F # Interactive действительно отключен от проектной системы в Visual Studio. Я полагаю, что более тесная интеграция была бы весьма полезной (но, вероятно, ее трудно обеспечить).

+4

Хммм, да, я думал, что это будет половина точки с интерактивным окном F # в среде IDE, чтобы получить некоторый контекст среды IDE. Надеюсь, кто-то может пролить свет на это? – Russell

+2

+1 В настоящее время F # Interactive действительно отключен от проектной системы в Visual Studio. –

+0

Я вижу «отправку вывода проекта в файл F # interactive» в проекте-исследователе проектов F #, но не на C# projects = ( – Maslow

28

У меня есть линии, как это в верхней части моего .fs файла:

#if INTERACTIVE 
#r @"C:\path\to\some.dll" 
#I @"C:\Users\bford\path\to\a\project\in\this\solution\bin\Debug" 
#r "Project.name" 
#endif 

Alt-Enter Теперь капли меня в FSI со всей необходимой вещью нагруженной

+1

этот ответ был бы потрясающим, если бы он показал, как , или работал с относительным путем – Maslow

+0

Я думаю, что это теперь 'Ctrl + Shift + Enter' по умолчанию и требует сначала выбрать содержимое файла. – Abel

1

Я бы подумал, что для ссылки на текущий проект должно быть просто, получить список ссылок, которые он содержит, а затем дополнительно сгенерировать список операторов #r (и, возможно, # i) для создаваемого интерактивного сеанса, ссылаясь на dll сам проект.

Например: "FSI/я: pathOfLib1/г: lib1/я: pathOfLib2/г: lib2 ...."

PS: база по статье MSDN не кажется, что имена библиотек могут включают их префиксы пути, следовательно, отдельные в/i и/i: http://msdn.microsoft.com/en-us/library/dd233172%28v=vs.100%29.aspx

15

Теперь в Visual Studio 2013 вы можете добавить ссылку на интерактивное окно F #, щелкнув правой кнопкой мыши по ссылочной dll и нажав «Отправить на F # interactive».

+1

Пока это лучший ответ, который я нашел. Спасибо тонну за подсказку! – Michael

1

Было бы хорошо, если бы в меню Visual Studio F # Interactive Options было указано, что сценарий запуска может быть передан в FSI через директиву «-use:». Такой скрипт может быть затем передан метаданные решения, позволяющие более интегрировать среды, такие как загрузка последних выходных данных проекта.

Смежные вопросы