我开始在F#中创建自己的类型提供程序,但我担心文档不良和个人缺乏经验(特别是语法)与F#相结合会给我带来麻烦。
我收到编译错误,说明我需要为我的类型声明成员。这让我相信我有一些简单的空白问题(尽管在MSDN网页上模仿代码......)
我简单地尝试定义类型:
type PoorlyWrittenQuestion =
member briefIntro : string
member poorDescription : string
member confusingExample : string
我确信这里有几个问题。特别感谢任何不仅能够解决这些问题的人,还能指出我对F#3.0语法的可靠文档来源。
编辑:这个问题可能需要更好的标题,因为虽然这是我在TypeProvider上工作的第一步,但我认为我的问题不是特定于TypeProvider。
答案 0 :(得分:3)
如果你想定义具有非静态成员的类,那么成员名称应该从一些标识符开始,这些标识符表示'这个'喜欢:
member this.briefInfo
或
member x.briefInfo
(你可以选择你想要的任何ID) 或
static member briefInfo
如果你想要静态类成员。
以下是F#中的OOP快速指南:http://blogs.msdn.com/b/timng/archive/2010/04/05/f-object-oriented-programming-quick-guide.aspx
以下是有关如何创建类型提供程序的教程:http://msdn.microsoft.com/en-us/library/hh361034.aspx
这是另一个教程: http://blog.mavnn.co.uk/type-providers-from-the-ground-up/