Class GraphNavigation
Provides methods for navigating and loading graphs of related entities.
public static class GraphNavigation
- Inheritance
-
GraphNavigation
- Inherited Members
Methods
EnsureLoaded(IEnumerable<IEntity>, params RelationshipPath[])
Ensure that all specified relationship paths are loaded.
public static void EnsureLoaded(IEnumerable<IEntity> roots, params RelationshipPath[] paths)
Parameters
rootsIEnumerable<IEntity>pathsRelationshipPath[]
Exceptions
- InvalidGraphException
When a relationship in
pathsis not present.
EnsureLoaded<TTree>(IEnumerable<IEntity>, TTree)
Ensure that all relationships described by tree are loaded.
public static void EnsureLoaded<TTree>(IEnumerable<IEntity> roots, TTree tree) where TTree : IRelationshipTree<TTree>
Parameters
rootsIEnumerable<IEntity>treeTTree
Type Parameters
TTree
Exceptions
- InvalidGraphException
When a relationship in
treeis not present.
GetGraphLoadOperations(IEnumerable<IEntity>, params RelationshipPath[])
Generates the read operations required to load an arbitrarily complex graph of related entities.
public static List<ReadOperation> GetGraphLoadOperations(IEnumerable<IEntity> roots, params RelationshipPath[] paths)
Parameters
rootsIEnumerable<IEntity>pathsRelationshipPath[]
Returns
GetGraphLoadOperations<TTree>(IEnumerable<IEntity>, TTree)
Generates the read operations required to load an arbitrarily complex graph of related entities.
public static List<ReadOperation> GetGraphLoadOperations<TTree>(IEnumerable<IEntity> roots, TTree tree) where TTree : IRelationshipTree<TTree>
Parameters
rootsIEnumerable<IEntity>treeTTree
Returns
Type Parameters
TTree
GetGraphLoadOperations<T>(IEntityQuery<T>, params RelationshipPath[])
Generates the read operations required to load an arbitrarily complex graph of entities.
public static List<ReadOperation> GetGraphLoadOperations<T>(IEntityQuery<T> baseQuery, params RelationshipPath[] paths) where T : IEntity
Parameters
baseQueryIEntityQuery<T>pathsRelationshipPath[]
Returns
Type Parameters
T
GetGraphLoadOperations<T>(IQueryable<T>, params RelationshipPath[])
Generates the read operations required to load an arbitrarily complex graph of entities.
public static List<ReadOperation> GetGraphLoadOperations<T>(IQueryable<T> baseQuery, params RelationshipPath[] paths) where T : IEntity
Parameters
baseQueryIQueryable<T>pathsRelationshipPath[]
Returns
Type Parameters
T
GetGraphLoadOperations<TEntity, TTree>(IEntityQuery<TEntity>, TTree)
Generates the read operations required to load an arbitrarily complex graph of entities.
public static List<ReadOperation> GetGraphLoadOperations<TEntity, TTree>(IEntityQuery<TEntity> baseQuery, TTree tree) where TEntity : IEntity where TTree : IRelationshipTree<TTree>
Parameters
baseQueryIEntityQuery<TEntity>treeTTree
Returns
Type Parameters
TEntityTTree
GetGraphLoadOperations<TEntity, TTree>(IQueryable<TEntity>, TTree)
Generates the read operations required to load an arbitrarily complex graph of entities.
public static List<ReadOperation> GetGraphLoadOperations<TEntity, TTree>(IQueryable<TEntity> baseQuery, TTree tree) where TEntity : IEntity where TTree : IRelationshipTree<TTree>
Parameters
baseQueryIQueryable<TEntity>treeTTree
Returns
Type Parameters
TEntityTTree
GetReachableEntities(IEnumerable<IEntity>)
public static IEnumerable<EntityKernel> GetReachableEntities(IEnumerable<IEntity> roots)
Parameters
rootsIEnumerable<IEntity>
Returns
GetReachableEntities(EntityKernel)
public static IEnumerable<EntityKernel> GetReachableEntities(EntityKernel root)
Parameters
rootEntityKernel
Returns
LoadGraphAsync(IEnumerable<IEntity>, CancellationToken?, params RelationshipPath[])
Loads an arbitrarily complex graph of related entities in one call to ReadAsync, or zero if all paths are already loaded.
public static Task LoadGraphAsync(IEnumerable<IEntity> roots, CancellationToken? cancellationToken, params RelationshipPath[] paths)
Parameters
rootsIEnumerable<IEntity>cancellationTokenCancellationToken?pathsRelationshipPath[]
Returns
LoadGraphAsync(IEntity, CancellationToken?, params RelationshipPath[])
Loads an arbitrarily complex graph of related entities in one call to ReadAsync, or zero if all paths are already loaded.
public static Task LoadGraphAsync(IEntity root, CancellationToken? cancellationToken, params RelationshipPath[] paths)
Parameters
rootIEntitycancellationTokenCancellationToken?pathsRelationshipPath[]
Returns
LoadGraphAsync(IEntity, params RelationshipPath[])
Loads an arbitrarily complex graph of related entities in one call to ReadAsync, or zero if all paths are already loaded.
public static Task LoadGraphAsync(IEntity root, params RelationshipPath[] paths)
Parameters
rootIEntitypathsRelationshipPath[]
Returns
LoadGraphAsync<TTree>(IEnumerable<IEntity>, CancellationToken?, TTree)
Loads an arbitrarily complex graph of related entities in one call to ReadAsync, or zero if all paths are already loaded.
public static Task LoadGraphAsync<TTree>(IEnumerable<IEntity> roots, CancellationToken? cancellationToken, TTree tree) where TTree : IRelationshipTree<TTree>
Parameters
rootsIEnumerable<IEntity>cancellationTokenCancellationToken?treeTTree
Returns
Type Parameters
TTree
LoadGraphAsync<TTree>(IEntity, CancellationToken?, TTree)
Loads an arbitrarily complex graph of related entities in one call to ReadAsync, or zero if all paths are already loaded.
public static Task LoadGraphAsync<TTree>(IEntity root, CancellationToken? cancellationToken, TTree tree) where TTree : IRelationshipTree<TTree>
Parameters
rootIEntitycancellationTokenCancellationToken?treeTTree
Returns
Type Parameters
TTree
LoadGraphAsync<TTree>(IEntity, TTree)
Loads an arbitrarily complex graph of related entities in one call to ReadAsync, or zero if all paths are already loaded.
public static Task LoadGraphAsync<TTree>(IEntity root, TTree tree) where TTree : IRelationshipTree<TTree>
Parameters
rootIEntitytreeTTree
Returns
Type Parameters
TTree