Чтобы открыть пространство имен / модуль, не открывая сначала его родителя, необходимо добавить атрибут на уровне сборки.Вы можете сделать это, добавив файл AssemblyInfo.fs в свой проект:
В случае следующего кода:
namespace Framework
module GlobalFunctions =
let Test () =
10.
Например, вы добавили бы следующий код в AssemblyInfo.fs:
namespace Framework
[<assembly:AutoOpen("Framework.GlobalFunctions")>]
do()
И затем вы можете вызвать код из файла скрипта (.fsx) с помощью:
#r @"C:\PathToAssembly\Assembly.dll"
let result = Test ()
В результате:
--> Referenced 'C:\PathToAssembly\Assembly.dll'
val result : float = 10.0