F # Сценарии: добавьте новый каталог через #i
-
27-10-2019 - |
Вопрос
Как я мог заставить это работать?
#I (__SOURCE_DIRECTORY__ + @"\bin\Release")
И вторые вопросы. Можно ли сделать что -то вроде:
let path = __SOURCE_DIRECTORY__ + @"\bin\Release"
#I path
?
Решение
Вы не можете. Команды #i и #R действительно представляют собой предварительные инструкции, которые выполняются до того, как код будет динамически составлен FSI, поэтому они поддерживают только строковые литералы. Это логично, если вы думаете об этом, так как ссылочные сборки, возможно, должны скомпилировать код.
Тем не менее, команда #R и #I всегда проходит относительные пути как из местоположения сценариев, так что это
#I @".\bin\Release"
Должны работать просто отлично (обратите внимание на точку, чтобы убедиться, что это относитель, а не абсолютный путь).
Обратите внимание, что относительные пути пробега взяты из рабочего каталога FSI (обычно в каталоге Temp), поэтому вам нужно использовать __SOURCE_DIRECTORY__
При загрузке файлов из ваших сценариев.