Я рассматривал выражения запроса здесь http://msdn.microsoft.com/en-us/library/vstudio/hh225374.aspx
И мне было интересно, почему следующее является законным
let testQuery = query {
for number in netflix.Titles do
where (number.Name.Contains("Test"))
}
Но вы действительно не можете сделать что-то вроде этого
let christmasPredicate = fun (x:Catalog.ServiceTypes.Title) -> x.Name.Contains("Christmas")
let testQuery = query {
for number in netflix.Titles do
where christmasPredicate
}
Конечно, F # позволяет такую композицию, чтобы вы могли повторно использовать предикат? Что, если бы я хотел, чтобы рождественские титулы сочетались с другим предикатом, как до определенной даты? Мне нужно скопировать и вставить весь мой запрос? С# полностью отличается от этого и имеет несколько способов построения и комбинирования предикатов