Как загрузить внешний файл F # script и использовать его в F # interactive? - программирование
Подтвердить что ты не робот

Как загрузить внешний файл F # script и использовать его в F # interactive?

Я хотел бы загрузить один или несколько файлов .fsx в F # interactive и иметь все функции, определенные в файлах .fsx в области видимости, чтобы я мог напрямую использовать функции в консоли.

Директива #load выполняет указанный файл .fsx, но тогда я больше не могу использовать эти функции в файле .fsx. Любое обходное решение для этого? Спасибо.

4b9b3361

Ответ 1

Я подозреваю, что загружаемый script не находится в модуле, который может вызвать вашу проблему. Просто добавьте

module Script1

в первом script, а затем вы можете сделать

#load "Script1.fsx"
open Script1

и ваши функции будут доступны

Ответ 2

Если вы не объявляете модуль в файле fsx, он неявно создает модуль с тем же именем, что и имя файла.

Поэтому вы всегда можете ссылаться на другой файл fsx, используя полностью квалифицированные имена или открывая соответствующие модули перед использованием. Например, в Script2.fsx вы можете:

#load "Script1.fsx"

open Script1

// Use functions in Script1.fsx
// ...