Assembly: C1.LiveLinq (in C1.LiveLinq.dll)
Syntax
C# |
---|
public static class IndexedQueryExtensions |
Visual Basic |
---|
<ExtensionAttribute> _ Public NotInheritable Class IndexedQueryExtensions |
Remarks
The methods in this class provide an implementation of the LINQ query operators for querying data sources that implement IIndexedSource<(Of <(<'T>)>)>. Those data sources include LiveLinq to Objects, LiveLinq to DataSet and LiveLinq to XML, see How to query collections with LiveLinq.
These implementations of query operators use indexing and other optimization techniques to speed up query execution.
Not all standard LINQ query operators are present here, but it does not mean that they cannot be used in the same query. For the operators that are not present here, standard LINQ implementations are used, because they don't require or don't allow optimization.
Note: Live views are also LiveLinq data sources, but they have their own implementations of query operators defined in the View<(Of <(<'T>)>)> class. Live view implementations are heavier, require more resources, so it is not recommended to use live view implementations in cases where you don't need live view functionality (for example, for querying read-only collections), see Live View Performance. If you have a live view, but want to query it using operators from IndexedQueryExtensions instead of View<(Of <(<'T>)>)>, use AsIndexed<(Of <<'(T>)>>)(IIndexedSource<(Of <<'(T>)>>)) to "downgrade" the live view to an IIndexedSource<(Of <(<'T>)>)>.