【问题标题】:Method not found: GenericChart when using FSharp.Charting from powershell cmdlet找不到方法:从 powershell cmdlet 使用 FSharp.Charting 时的 GenericChart
【发布时间】:2016-10-06 02:26:55
【问题描述】:

我正在尝试使用 powershell cmdlet(也是用 F# 编写)中的 FSharp 图表库,但我得到了 GenericChart 的 MissingMethodException。

图表代码示例:

open FSharp.Charting
let testchart() =
    let foo = DataAccessLayer.GetTestData()
    Chart.Line(foo) |> Chart.Show

从 PSCmdlet 派生类的 ProcessRecord() 方法调用 testchart 函数。 图表和 cmdlet 代码都在同一个解决方案中,但项目不同。解决方案编译没有错误。图表代码以交互方式运行,没有错误。但是当我尝试执行 powershell cmdlet 时,我得到了缺少的方法异常。 使用 VS2013 和 VS2015 时会发生这种情况。

根据文档 GenericChart 应该在 FSharp.Charting.dll 中。我确认 dll 与 powershell 模块代码位于同一目录中。

同样,在 VS 中,所有智能感知都可以工作,一切都可以编译并以交互方式工作。

非常感谢任何建议。

【问题讨论】:

  • 缺少方法异常是 F# 标签上定期回答的常见问题。它是如此受欢迎,它有自己的tag。你搜索过以前的帖子吗?如果是这样,除了确保它适用于 F# Interactive 但不适用于 cmdlet 之外,您还做了什么尝试?
  • @Coder,上一篇文章是关于直接从 powershell 调用函数(即从 powershell 代码调用 f#)我正在从托管在 powershell 环境中的 F# 代码调用 F#。我不认为它是一样的,虽然它可能有相同的原因?
  • 您是否在其他标签中搜索过可能的解决方案?还有一些与 cmdlet 相关的标签:cmdletcmdletspscmdlet 可能有答案。
  • 我不使用cmdlet,所以我不确定,这就是为什么我只在评论中添加可能并且没有将其标记为重复。它主要是为了帮助其他知识渊博的人找到它,然后确定它是否是重复的。感谢您的反馈,应该可以帮助其他人。

标签: powershell f# cmdlets missingmethodexception


【解决方案1】:

此问题是由于库的副本已过时所致。使用最新的 F# 库从头开始重建,它将清除。

我收到了完全相同的错误消息,因此修复了它。

【讨论】:

    猜你喜欢
    • 2017-09-07
    • 1970-01-01
    • 2017-04-20
    • 2019-07-09
    • 2021-02-11
    • 2013-12-05
    • 1970-01-01
    • 1970-01-01
    • 2013-06-08
    相关资源
    最近更新 更多