我可以从 fsx 文件中安装/引用软件包吗?

2024-01-12

我正在尝试找到一个简单的解决方案,不需要太多手动工作来参考包。在 .fsx 文件内。

  • LinqPad 4 lets me simply add nuget packages
    • 没有智能感知或自动完成
    • 下载某些类型的软件包后删除软件包(模板 https://www.nuget.org/packages/Templatus/例如)
  • LinqPad 5 beta lets me add nuget packages
    • 下载某些类型的软件包后删除软件包(模板 https://www.nuget.org/packages/Templatus/例如)
    • 经常出现故障(智能感知和汇编 http://forum.linqpad.net/discussion/968/missing-method-exceptions?new=1)
  • VS2015不允许您下载/安装 fsx 文件的软件包(仅限项目)
  • VSCode不允许您下载/安装 fsx 文件的 nuget 或 paket 包。

因此,我最终不得不在 VS2015 中使用 .fsx,同时使用 linqpad 来下载软件包(对于像 templatus 这样的软件包,它下载的是 exe 而不是 dll,这仍然失败)。然后我可以将它们引用为

#I @"..\LINQPad\NuGet.FW46\FParsec\FParsec.1.0.2\lib\net40-client\" // references AppData\local\ ...  since . is %localappdata%\TEMP
  • 与 VSCode 中智能感知/自动完成引擎的相对路径不匹配,因此我无法从等式中删除 VS。
  • 在该位置已具有该包的机器之外无法工作
  • 最终做了一个一堆代码 https://github.com/ImaginaryDevelopment/LinqPad/blob/master/LINQPad%20Queries/Roslyn/convert%20INotifyClass%20to%20F%23.fsx#L6-L93这不能很好地跨越 .fsx 文件,必须根据包参考来解决

我不想创建项目。我有大量单独的脚本,需要单独维护并供其他人按需使用。

是否有一个 IDE(或上述其中之一的修复/扩展)可以为我提供智能感知、自动完成和 F# .fsx 文件的包管理,可以在用户到用户、机器到机器之间轻松工作?


Ionide 插件 http://ionide.io/ for VsCode https://code.visualstudio.com/ and Atom https://atom.io/具有您正在寻找的功能

VsCode 使用说明

使用命令选项板安装 Ionide 扩展离子化-fsharp https://marketplace.visualstudio.com/items/Ionide.Ionide-fsharp and 离子化物包 https://marketplace.visualstudio.com/items/Ionide.Ionide-Paket

您需要将 F# 安装添加到您的PATH (在 Windows 上快速环境编辑器 http://www.rapidee.com/en/about是我的首选PATH编辑)

对于 F# 4.0 添加C:\Program Files (x86)\Microsoft SDKs\F#\4.0\Framework\v4.0

打开将保存您的工作文件夹.fsx files

通过命令面板执行 paket 命令将是使用 nuget 包的主要界面

做一个新的.fsx文件,(我建议使用高级新文件 https://marketplace.visualstudio.com/items/dkundel.vscode-new-file对标准 VsCode 方法的扩展)

第一步是运行paket init这是使用 pket 来管理你的包所必需的

如果您单击open通知弹出窗口上的按钮,您可以在侧面板中查看数据包的输出

使用后add nuget package命令和输入extcore对于该包,您应该看到工作树 更新为

然后您需要做的就是在脚本中引用该包,您将获得您正在寻找的自动完成功能

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我可以从 fsx 文件中安装/引用软件包吗? 的相关文章

  • 函数式 GUI 编程可能吗? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我最近发现了 FP bug 试图学习 Haskell 到目前为止所看到的东西给我留下了深刻的印象 一流的函数 惰性求值和所有其他好处 我还不是专
  • 没有带有常量“模板参数”的 F# 泛型?

    我突然想到 F 泛型似乎不接受常量值作为 模板参数 假设有人想创建一种类型RangedInt这样 它的行为类似于 int 但保证只包含整数值的子范围 一种可能的方法是建立受歧视的工会 类似于 type RangedInt Valid of
  • Scala REPL 中的类型信息

    如果我使用 F 解释器 我可以定义一个简单的函数 如下所示 gt Function to check if x is an integer multiple of y gt let multipleOf x y x y 0 val mult
  • F# 中的异步 EF 查询

    在使用 EF6 的 C 中 我可以轻松地进行如下异步操作 using var context new MyDbContext var item await context SomeEntities Where e gt e Id 1 Fir
  • F# 中的组总计 - 使用序列很容易,可以使用列表吗?

    给定一组 id value 元组序列 很容易计算组总数 与使用 C 和 LINQ 执行此操作的方式几乎相同 let items g1 5 g2 10 g1 20 let groupsums items gt Seq groupBy fun
  • F#、FParsec 和递归调用流解析器(第二次)

    感谢您的回复我的第一篇文章 https stackoverflow com questions 26853718 f fparsec and calling a stream parser recursively and 我的第二篇文章 h
  • F# 中使用抽象类还是接口?

    从 C 背景开始摸索 F 在 C 中 决定何时使用接口和何时使用抽象类有明显的区别 在 F 中 我发现两者几乎合而为一 我知道 就 CLR 而言 F 中的做法与 C 中的做法相同 但是在 F 中编程时使用的 最佳实践 是什么 我应该完全避免
  • 如何搭建Windows Phone开发环境并使用F#开发应用程序?

    我已经下载了Windows Phone开发工具 但我不知道如何使用F 来开发应用程序 目前是C 将 F 和 Windows Phone 模板安装到 Visual Studio 中可以让生活变得更轻松 如果您打开 Visual Studio
  • F# 中序列的递归函数

    这是一个相当微不足道的问题 但快速的谷歌搜索并没有给我答案 为序列编写递归函数的标准方法是什么 对于列表 您可以使用空列表和头 尾模式进行模式匹配 序列的等效项是什么 没有标准的方法可以做到这一点 因为您很少为序列编写递归函数 您应该查看各
  • 在 F# 中实现返回 Task 的 C# 方法

    我正在 F 中创建一个类型 该类型继承自 C 类 该类公开返回的方法Task
  • 如何在 suave webpart 中设置 Json 响应

    我从 Suave 和 F 开始 我正在尝试在我的 web 部件中传递一个 json 序列化对象以在我的响应中获取它 在 php 中我有这个 player1Key hdegftzj25 gameKey aegfhzkfszl
  • 如何在插件场景中实现程序集绑定重定向?

    我有一个plugin P延伸和application A NET40 我无法控制 P 程序集 NET40 有一个shared dependency D NET35 P和D都依赖于FSharp Core 但版本不同 P是针对FSharp Co
  • f# 运行总计序列

    好吧 这看起来应该很容易 但我就是不明白 如果我有一个数字序列 如何生成由运行总计组成的新序列 例如 对于序列 1 2 3 4 我想将其映射到 1 3 6 10 以适当的功能方式 Use List scan https msdn micro
  • 使用 SqlBulkCopy 和 F# 在 SQL 中导出矩阵

    我想将大量数据从 F 传输到 SQL 表 基本上我的 F 代码创建了一个三列矩阵 UserID ProductID and price 和N行 我想将其 复制 粘贴 到数据库中 我尝试了多种选择 但最终 从 F 传输数据非常慢 10000
  • F# 正确使用序列缓存

    我正在尝试将 Seq cache 与我制作的函数一起使用 该函数返回最多为 N 的素数序列 不包括数字 1 我无法弄清楚如何将缓存的序列保留在范围内 但仍然使用它在我的定义中 let rec primesNot1 n 2 n gt Seq
  • 将属性应用于返回值 - 在 F# 中

    在 C 中 可以将属性应用于方法的返回 return DynamicAttribute public object Xyz return new ExpandoObject 这在 F 中可能吗 背景 我想要一个用 F 编写的库的方法 该方法
  • 单位安全平方根

    我只是想知道如何以与 F 正确交互的方式编写用户定义的平方根函数 sqrt 单位制 http blogs msdn com andrewkennedy archive 2008 09 04 units of measure in f par
  • “不等于”的 F# 语法是什么?

    在 C 代码中 它会是这样的 if c 0 some code 那么在 F 中呢 From MSDN 有关 F 算术运算符的页面 http msdn microsoft com en us library dd469493 aspx 看起来
  • 如何使 FSI 在 NET5 下工作并让愚蠢的 stackoverflow 消息“标题不能包含...”闭嘴?

    我正在将一个相当小的 F 项目从 Net Framework 迁移到 NET5 迁移非常简单 一切正常 包括测试 但是 当我运行一些脚本时 我现在收到以下错误 Microsoft R F Interactive version 11 0 0
  • 如何编写一个计算表达式生成器来累积值并允许标准语言构造?

    我有一个计算表达式生成器 可以随时生成值 并且有许多自定义操作 但是 它不允许标准 F 语言构造 并且我在弄清楚如何添加此支持方面遇到了很多麻烦 举一个独立的例子 下面是一个非常简单且毫无意义的构建 F 列表的计算表达式 type Item

随机推荐