【问题标题】:Exception using XPlot from fsi使用 fsi 中的 XPlot 时出现异常
【发布时间】:2016-03-04 11:29:34
【问题描述】:

我正在尝试从 FSI 运行一个简单的 Xplot 示例。我已经安装了 XPlot 的所有 nuget packages,并将示例复制到他们的 hello world 页面中。

#r "../packages/Google.DataTable.Net.Wrapper.1.0.0/lib/Google.DataTable.Net.Wrapper.dll"
#r "../packages/Newtonsoft.Json.3.5.8/lib/35/Newtonsoft.Json.dll"
#r "System.Core.dll"
#r "System.dll"
#r "System.Numerics.dll"
#r "../packages/XPlot.GoogleCharts.1.3.1/lib/net45/XPlot.GoogleCharts.dll"

open XPlot.GoogleCharts

let Bolivia = [("2004", 400.0); ("2005", 500.0); ("2006", 900.0); ("2007", 700.0) ]
let Ecuador = [("2004", 500.0); ("2005", 700.0); ("2006", 600.0); ("2007", 900.0) ]
let Madagascar = [("2004", 100.0); ("2005", 200.0); ("2006", 300.0); ("2007", 400.0) ]

let series = [ "bars"; "bars"; "bars"]
let inputs = [ Bolivia; Ecuador; Madagascar ]

let chart =
    inputs
    |> Chart.Combo
    |> Chart.WithOptions 
         (Options(title = "Coffee Production", series = 
            [| for typ in series -> Series(typ) |]))
    |> Chart.WithLabels 
         ["Bolivia"; "Ecuador"; "Madagascar"]
    |> Chart.WithLegend true
    |> Chart.WithSize (600, 250)

现在,例如,当我尝试获取图表的 HTML 时... 图表.html

...我收到以下错误:

> System.TypeLoadException: Could not load type 'Google.DataTable.Net.Wrapper.Extension.SystemDataTableExtension' from assembly 'Google.DataTable.Net.Wrapper, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'.
   at XPlot.GoogleCharts.GoogleChart.get_Js()
   at XPlot.GoogleCharts.GoogleChart.get_Html() in C:\Users\AHMED\Documents\GitHub\XPlot\src\XPlot.GoogleCharts\Main.fs:line 282
   at <StartupCode$FSI_0006>.$FSI_0006.main@() in C:\Projects\XPlotTest\XPlotTest\Script.fsx:line 18

我在这里做错了什么?我怎样才能让它发挥作用?

非常感谢,

【问题讨论】:

  • 我已经在控制台应用程序中测试了相同的代码,并且在添加绑定重定向后它可以工作。是否可以在 fsi 中为单个项目添加绑定重定向,而无需编辑 FsiAnyCPU.exe.config ?

标签: f# fsi


【解决方案1】:

尝试将 Google.DataTable.Net.Wrapper 更新为 latest version (3.1.2)

#r "../packages/Google.DataTable.Net.Wrapper.3.1.2.0\lib\Google.DataTable.Net.Wrapper.dll"
(...)
 let html = chart.Html

val html : string =
  "<!DOCTYPE html>
    <html>
        <head>
            <met"+[1535 chars]

【讨论】:

  • 这有点奇怪,因为我已经引用了这个版本......无论如何,在 FSI 重新启动后它开始工作。谢谢!
猜你喜欢
  • 2011-10-15
  • 2015-02-05
  • 2014-08-06
  • 1970-01-01
  • 2011-09-15
  • 2016-11-08
  • 2011-08-11
  • 2011-09-30
  • 1970-01-01
相关资源
最近更新 更多