Skip to content
This documentation is currently in preview, therefore subject to change.

Word Template Operations

These operations are available for use in Word template expressions. For complete template syntax documentation, see Word Template Syntax.

OperationExamples and Notes
All(Predicate)persons.All(p => p.Age < 50)
Any()persons.Any()
Any(Predicate)persons.Any(p => p.Name == "John Smith")
Average(Selector)persons.Average(p => p.Age)

The input selector must return a value of any type that has predefined or user-defined addition and division operators.
Concat(IEnumerable)persons.Concat(otherPersons)

An implicit reference conversion must exist between types of items of concatenated enumerations.
Contains(Object)persons.Contains(otherPersons.First())
Count()persons.Count()
Count(Predicate)persons.Count(p => p.Age > 30)
Distinct()persons.Distinct()
First()persons.First()
First(Predicate)persons.First(p => p.Age > 30)
FirstOrDefault()persons.FirstOrDefault()
FirstOrDefault(Predicate)persons.FirstOrDefault(p => p.Age > 30)
GroupBy(Selector)persons.GroupBy(p => p.Age)

Or:

persons.GroupBy(p => new { Age = p.Age, Count = p.Children.Count() })

Returns an enumeration of group objects. Each group has a unique Key defined by the selector and can be treated as an enumeration of its items.
Last()persons.Last()
Last(Predicate)persons.Last(p => p.Age > 100)
LastOrDefault()persons.LastOrDefault()
LastOrDefault(Predicate)persons.LastOrDefault(p => p.Age > 100)
Max(ComparableSelector)persons.Max(p => p.Age)
Min(ComparableSelector)persons.Min(p => p.Age)
OrderBy(ComparableSelector)persons.OrderBy(p => p.Age)

Or:

persons.OrderBy(p => p.Age).ThenByDescending(p => p.Name)

Or:

persons.OrderBy(p => p.Age).ThenByDescending(p => p.Name).ThenBy(p => p.Children.Count())

Returns an ordered enumeration. Use ThenBy or ThenByDescending to specify additional keys.
OrderByDescending(ComparableSelector)persons.OrderByDescending(p => p.Age)

Or:

persons.OrderByDescending(p => p.Age).ThenByDescending(p => p.Name)

Or:

persons.OrderByDescending(p => p.Age).ThenByDescending(p => p.Name).ThenBy(p => p.Children.Count())
Select(Selector)persons.Select(p => p.Name)
SelectMany(EnumerationSelector)persons.SelectMany(p => p.Children)
Single()persons.Single()
Single(Predicate)persons.Single(p => p.Name == "John Smith")
SingleOrDefault()persons.SingleOrDefault()
SingleOrDefault(Predicate)persons.SingleOrDefault(p => p.Name == "John Smith")
Skip(int)persons.Skip(10)
SkipWhile(Predicate)persons.SkipWhile(p => p.Age < 21)
Sum(Selector)persons.Sum(p => p.Children.Count())

The selector must return a value with a predefined or user-defined addition operator.
Take(int)persons.Take(5)
TakeWhile(Predicate)persons.TakeWhile(p => p.Age < 50)
Union(IEnumerable)persons.Union(otherPersons)

An implicit reference conversion must exist between types of items of united enumerations.
Where(Predicate)persons.Where(p => p.Age > 18)