Using Operators
Contents
[
Hide
]
The following table contains predefined and user-defined operators that LINQ Reporting Engine enables you to use in template expressions.
Primary | x.y x?.y f(x) a[x] a?[x] new |
Unary | - ! ~ (T)x |
Binary | * / % + - << >> < > <= >= == != & ^ | && | | ?? |
Ternary | ?: |
The engine follows operator precedence, associativity, and overload resolution rules declared at C# Language Specification 5.0 while evaluating template expressions. But be aware of the following limitations in the behavior comparing with the specification:
- Implicit user-defined conversions are supported only when specified explicitly.
- The indexing of multi-dimensional arrays is not supported.
- Whereas the object initializer syntax is supported (including objects of anonymous types), the collection initializer syntax is not.
Also, the engine enables you to use lifted operators in template expressions.