谁能帮我理解为什么下面的代码没有从查询中返回结果,而第二个示例却没有(尽管如果我尝试在第二个示例上使用标准,我会很痛苦!)
type EbayData =
ODataService<"http://ebayodata.cloudapp.net">
let Ebay = EbayData.GetDataContext()
let Favourites title number = query{
for deal in Ebay.Deals do
where (deal.Title.Contains(title))
take number
}
let Esearch title number = [for item in Favourites title number do
yield item]
工作版本:
type Catalog = ODataService< "http://ebayodata.cloudapp.net/" >
let ebay = Catalog.GetDataContext()
let trial =
[ for item in ebay.Deals do
yield item]
我似乎无法将第一个输出到任何类型的列表,无论使用 |> 等做什么。第二个示例似乎并没有带回许多结果来进行文本查询。但是,我真正的问题是我似乎无法从 F# 版本的 LINQ 中得到任何东西。
输出用于我使用 VB 与列表对话的 WPF 应用程序中。我已经用它填充了一个包含 10 个项目的非歧视性列表,所以这个结果确实有效。这是VB代码。
For Each Deal In trial.Where(Function(p) p.Title.Contains(title.Text))
DealResults.Items.Add(buildStackPanel(Deal))
Next
当我按下 Ctrl-K 时,这篇文章中 F Sharp 的间距似乎不起作用,所以如果有人能告诉我我做错了什么——我想这是第二个问题!