Я хотел бы использовать интерактивную консоль F # с проектами в текущем открытом решении в Visual Studio 2010. Есть ли быстрый и простой способ добавить ссылку в интерактивную консоль F # для ссылки на проекты в текущем открытом решении?
F # interactive: ссылку на проект в текущем открытом решении
Ответ 1
Если вы часто ссылаетесь на проект, вы можете добавить ссылку "всегда" в командную строку FSI, в разделе "Инструменты- > Параметры- > F # Инструменты- > F # интерактивные параметры. Добавьте ключ -r как:
-r "C:\Users\yaddayadda\MyDll.dll"
Ответ 2
У меня есть строки, подобные этому в верхней части моего файла .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 со всеми необходимыми вещами, загруженными
Ответ 3
Я не думаю, что есть прямой способ ссылаться на проект в решении. Лучший способ, который я могу придумать, - добавить файл FSX где-нибудь в ваш проект с директивой #r
:
#r @"bin\Debug\YourProject.dll"
Затем вы можете по крайней мере ссылаться на скомпилированный DLL файл, просто нажав Alt + Enter в Visual Studio. Насколько я знаю, вы не можете ссылаться на проект - вы можете ссылаться только на сборку.
В настоящее время F # Interactive действительно отключен от проектной системы в Visual Studio. Я полагаю, что более тесная интеграция была бы весьма полезной (но, вероятно, ее трудно обеспечить).
Ответ 4
Теперь в Visual Studio 2013 вы можете добавить ссылку на интерактивное окно F #, щелкнув правой кнопкой мыши по ссылочной DLL и нажав "Отправить на F # interactive".
Ответ 5
Я бы подумал, что было бы просто ссылаться на текущий проект, получить список ссылок, который он содержит, а затем, при необходимости, создать список операторов #r (и, возможно, # i) для создаваемого интерактивного сеанса, ссылаясь на dll самого проекта.
Например: "fsi/i: pathOfLib1/r: lib1/i: pathOfLib2/r: lib2...."
PS: база в статье MSDN не показала, что имена библиотек могут включать в себя их префиксы пути, следовательно, отдельные в /i и/i: http://msdn.microsoft.com/en-us/library/dd233172%28v=vs.100%29.aspx
Ответ 6
Было бы хорошо, если бы в меню Visual Studio F # Interactive Options было указано о запуске script, чтобы вызов мог перейти в FSI через директиву "use". Такой script может быть передан метаданные решения, которые позволяют более интегрировать среды, такие как загрузка последних выходных данных проекта.