Partager via


Microsoft.VisualStudio.ProjectSystem.Query.Providers Namespace

Classes

ExportActionParameterTypeAttribute

Provides a way to export an action parameter type.

PathUtilities

Utility methods to handle paths.

QueryActionProviderAttribute

Provide a strong type representation of the basic metadata for a provider to support an action.

QueryDataProviderAttribute

Required metadata for any query data provider exported through MEF. It provides data for the query engine to know which specific provider need to be loaded.

QueryDataProviderZoneAttribute

Required metadata for any query data provider exported through MEF. It provides data for the query engine to know which specific provider needs to be loaded.

QueryDataSourceChangeNotification

Represents changes in query data sources.

QueryInputProviderStateAttribute

Provides information on the expected provider state of a data provider.

RelationshipQueryDataProviderAttribute

Required metadata for a query data provider to resolve data for an entity relationship exported through MEF. It provides data for the query engine to know which specific provider needs to be loaded.

Interfaces

IAsyncQueryDefinition

Information inside Microsoft.VisualStudio.ProjectSystem.Query.AsyncQueryable to pass to the IQueryByRelationshipDataProvider2 to create runtime data provider. The reason we don't pass Microsoft.VisualStudio.ProjectSystem.Query.AsyncQueryable to the provider directly is that we have strong type query for local queries and weak type one for remote queries. It would be too easy for a provider to depend on strong type contract without realizing it won't work for remote queries.

IQueryActionProvider

Represents a data provider to execution an action based on known entities (from a query). Such providers must carry both QueryDataProviderAttribute metadata and QueryActionProviderAttribute metadata.

IQueryActionProvider2

Represents a data provider to execute an action based on known entities (from a query). Such providers must carry both QueryDataProviderAttribute metadata and QueryActionProviderAttribute metadata.

IQueryActionProviderMetadataView
IQueryByIdDataProvider

Represents a data provider to retrieve data based on known entity identities. Such providers need to carry QueryDataProviderAttribute metadata.

IQueryByRelationshipDataProducer

A IQueryDataProducer<TRequest,TResult> created to execute a query. More than supporting execution, this contract answer whether the Producer also handles extra portion of the query, including filtering conditions. In the future, we may allow it to handle additional filtering expressions, or children queries as well. If the producer doesn't support the extra function, the query engine will create default implementation for those parts.

IQueryByRelationshipDataProvider

Represents a data provider to retrieve data based on known entities (from another provider) and a defined relationship. Such providers must carry both QueryDataProviderAttribute metadata and RelationshipQueryDataProviderAttribute metadata.

IQueryByRelationshipDataProvider2

Represents a data provider to retrieve data based on known entities (from another provider) and a defined relationship. Such providers must carry both QueryDataProviderAttribute metadata and RelationshipQueryDataProviderAttribute metadata. This interface implements a data provider which supports advanced filtering logic.

IQueryCollectionFilterFallbackProvider

Represents a provider to implements member collection filters. This is a MEF component contract on the Query server side. A such component must also carries QueryDataProviderAttribute to declare the data type it handles. Multiple providers are allowed, and will be called until one provider returns value which is not null.

IQueryDataChangeProvider

Represents a data provider that monitors changes and notifies the observers. Such providers must carry both QueryDataProviderAttribute metadata and RelationshipQueryDataProviderAttribute metadata.

IQueryDataProviderMetadataView

Provide a strong type representation of the basic metadata for a query data provider.

IQueryDataProviderZoneMetadataView

Provide a strong type representation of the data zone metadata for a query data provider.

IQueryDataSourceVersionProvider

IQueryDataSourceVersionProvider is a MEF contract provided by query data sources. It notifies the query engine when sources are updated, so the engine can rerun queries and produce updates. Version keys are expected to start with "ProviderName:", and each IQueryDataSourceInfoProvider MEF component must have a name matching it.

IQuerySpaceZoneController

A controller to manage what provider zone should be activated to prevent loading assemblies unnecessary.

IQueryUpdateBatchProvider

A component provided to support batching update operations (for a specific data zone).

IRelationshipQueryDataProviderMetadataView

Provide a strong type representation of the basic metadata for a relationship based query data provider.