2013-05-06 73 views
5

有人可以指向我生成的類型F#TypeProvider的工作示例嗎?理想情況下,基於F#示例包「ProvidedTypes - *。fs」庫。生成類型提供程序工作示例

我嘗試了F#3.0示例包中的「GeneratedTypeProvider」,但它對我不起作用。我收到「...'FSharpLib.T'不包含'F1'的定義,並且沒有找到接受類型'FSharpLib.T'的第一個參數的擴展方法'F1'(您是否缺少using指令或程序集引用?)「用於C#項目。我不太關心C#項目(ConsoleApplication1),但是當我將ConsoleApplication2作爲調用T.F1的控制檯應用程序運行時,我收到了令人恐怖的「錯誤,在類型爲FSharpLib.Program的pass3中,error:GetMethodRefAsMethodDefIdx for mref =」F1 「,錯誤:類型'Microsoft.FSharp.Compiler.AbstractIL.ILBinaryWriter + MethodDefNotFound'的異常被拋出。」誠實地說,可疑源代碼與 不一致http://apollo13cn.blogspot.com/2013/01/generated-type-provider-and-code.html

我也看過http://code.google.com/p/froto/source/browse/Gen/ProtoTypeProvider.fs。我沒有編譯/運行該項目,但沒有使用Sample Pack,這當然是次優。

對GitHub上的colinbull的「Playground」項目不太確定,因爲它似乎只是從其他程序集中複製類型。

回答

2

一般而言,樣本包中的測試項目包含擦除和生成類型提供者的測試。然而,當我運行測試時,我看到了與你一樣的錯誤 - 似乎'提供的類型'API最近被部分破壞 - 現在已修復(至少對於測試項目,沒有嘗試過GeneratedTypeProvider示例)

+0

謝謝。 「GeneratedTypeProvider」的作品。 – 2013-05-07 03:04:51

相關問題