在LINQPad中编写F#查询

我试图用F#来构建一个针对数据库的查询,但是我无法得到最简单的查询来编译。

我可以像这样构造一个C#查询:

from c in Categories
select c

一切正常。 但是,当我尝试在F#中执行相同的操作时:

query { for c in Categories do
        select c }

我收到以下错误:

无效使用类型名称和/或对象构造函数。 如有必要,使用'new'并将构造函数应用于其参数,例如' new Type(args) '。 所需的签名是: Categories() : unit

LINQPad捆绑了大量的样本,但是没有一个F#样本真正显示如何使用它来查询数据库。 我也浏览过互联网,但是我找不到任何使用F#在LINQPad中查询数据库的示例。 我在这里错过了什么?


出于好奇心,我决定尝试使用LinqPad中的F#工作。 我可以通过选择“F#程序”而不是F#表达式来实现它。 我确定只用一个表达式就有可能,但我对F#100%不熟悉,所以我只是做了足够的工作来得到一个工作的例子。 选择这个选项给了我一行:

let dc = new TypedDataContext()

从那里,我跟着这个例子页面来获得这个查询工作/执行:

let dc = new TypedDataContext()

let query1 = query { for c in dc.MyTable do
                     select c }

query1
|> Seq.iter (fun x -> printfn "SomeField: %s" x.SomeField)
链接地址: http://www.djcxy.com/p/86121.html

上一篇: Writing F# queries in LINQPad

下一篇: Generating version number in MSBuild