IGuardedOperations.InvokeBestMatchingFactory Метод

Определение

Перегрузки

InvokeBestMatchingFactory<TExtension,TMetadataView>(IList<Lazy<TExtension,TMetadataView>>, IContentType, IContentTypeRegistryService, Object)

Безопасно создает экземпляр точки расширения, объявленной метаданными типа содержимого которой является наиболее близкое соответствие с предоставленным Целевым типом содержимого.

InvokeBestMatchingFactory<TExtensionFactory,TExtensionInstance,TMetadataView>(IList<Lazy<TExtensionFactory,TMetadataView>>, IContentType, Func<TExtensionFactory,TExtensionInstance>, IContentTypeRegistryService, Object)

Безопасно вызывает делегат в фабрике расширений, метаданные объявленного типа содержимого которых лучше подходят для указанного целевого типа содержимого.

InvokeBestMatchingFactory<TExtension,TMetadataView>(IList<Lazy<TExtension,TMetadataView>>, IContentType, IContentTypeRegistryService, Object)

Безопасно создает экземпляр точки расширения, объявленной метаданными типа содержимого которой является наиболее близкое соответствие с предоставленным Целевым типом содержимого.

public:
generic <typename TExtension, typename TMetadataView>
 where TMetadataView : Microsoft::VisualStudio::Utilities::IContentTypeMetadata TExtension InvokeBestMatchingFactory(System::Collections::Generic::IList<Lazy<TExtension, TMetadataView> ^> ^ providerHandles, Microsoft::VisualStudio::Utilities::IContentType ^ dataContentType, Microsoft::VisualStudio::Utilities::IContentTypeRegistryService ^ contentTypeRegistryService, System::Object ^ errorSource);
public TExtension InvokeBestMatchingFactory<TExtension,TMetadataView> (System.Collections.Generic.IList<Lazy<TExtension,TMetadataView>> providerHandles, Microsoft.VisualStudio.Utilities.IContentType dataContentType, Microsoft.VisualStudio.Utilities.IContentTypeRegistryService contentTypeRegistryService, object errorSource) where TMetadataView : Microsoft.VisualStudio.Utilities.IContentTypeMetadata;
abstract member InvokeBestMatchingFactory : System.Collections.Generic.IList<Lazy<'Extension, 'MetadataView>> * Microsoft.VisualStudio.Utilities.IContentType * Microsoft.VisualStudio.Utilities.IContentTypeRegistryService * obj -> 'Extension (requires 'MetadataView :> Microsoft.VisualStudio.Utilities.IContentTypeMetadata)
Public Function InvokeBestMatchingFactory(Of TExtension, TMetadataView) (providerHandles As IList(Of Lazy(Of TExtension, TMetadataView)), dataContentType As IContentType, contentTypeRegistryService As IContentTypeRegistryService, errorSource As Object) As TExtension

Параметры типа

TExtension
TMetadataView

Параметры

providerHandles
IList<Lazy<TExtension,TMetadataView>>

Отложенные ссылки, которые будут вычисляться.

dataContentType
IContentType

Тип целевого содержимого.

contentTypeRegistryService
IContentTypeRegistryService

Экземпляр IContentTypeRegistryService , в котором упорядочиваются типы содержимого.

errorSource
Object

Ссылка на объект, который будет изменен для возможных исключений.

Возвращаемое значение

TExtension

Выбранный элемент providerHandles .

Комментарии

Этот класс поддерживает инфраструктуру Visual Studio и в целом не предназначен для непосредственного использования из кода.

Применяется к

InvokeBestMatchingFactory<TExtensionFactory,TExtensionInstance,TMetadataView>(IList<Lazy<TExtensionFactory,TMetadataView>>, IContentType, Func<TExtensionFactory,TExtensionInstance>, IContentTypeRegistryService, Object)

Безопасно вызывает делегат в фабрике расширений, метаданные объявленного типа содержимого которых лучше подходят для указанного целевого типа содержимого.

public:
generic <typename TExtensionFactory, typename TExtensionInstance, typename TMetadataView>
 where TExtensionFactory : class where TMetadataView : Microsoft::VisualStudio::Utilities::IContentTypeMetadata TExtensionInstance InvokeBestMatchingFactory(System::Collections::Generic::IList<Lazy<TExtensionFactory, TMetadataView> ^> ^ providerHandles, Microsoft::VisualStudio::Utilities::IContentType ^ dataContentType, Func<TExtensionFactory, TExtensionInstance> ^ getter, Microsoft::VisualStudio::Utilities::IContentTypeRegistryService ^ contentTypeRegistryService, System::Object ^ errorSource);
public TExtensionInstance InvokeBestMatchingFactory<TExtensionFactory,TExtensionInstance,TMetadataView> (System.Collections.Generic.IList<Lazy<TExtensionFactory,TMetadataView>> providerHandles, Microsoft.VisualStudio.Utilities.IContentType dataContentType, Func<TExtensionFactory,TExtensionInstance> getter, Microsoft.VisualStudio.Utilities.IContentTypeRegistryService contentTypeRegistryService, object errorSource) where TExtensionFactory : class where TMetadataView : Microsoft.VisualStudio.Utilities.IContentTypeMetadata;
abstract member InvokeBestMatchingFactory : System.Collections.Generic.IList<Lazy<'ExtensionFactory, 'MetadataView>> * Microsoft.VisualStudio.Utilities.IContentType * Func<'ExtensionFactory, 'ExtensionInstance (requires 'ExtensionFactory : null)> * Microsoft.VisualStudio.Utilities.IContentTypeRegistryService * obj -> 'ExtensionInstance (requires 'ExtensionFactory : null and 'MetadataView :> Microsoft.VisualStudio.Utilities.IContentTypeMetadata)
Public Function InvokeBestMatchingFactory(Of TExtensionFactory As Class, TExtensionInstance As Class, TMetadataView As Class) (providerHandles As IList(Of Lazy(Of TExtensionFactory, TMetadataView)), dataContentType As IContentType, getter As Func(Of TExtensionFactory, TExtensionInstance), contentTypeRegistryService As IContentTypeRegistryService, errorSource As Object) As TExtensionInstance

Параметры типа

TExtensionFactory
TExtensionInstance
TMetadataView

Параметры

providerHandles
IList<Lazy<TExtensionFactory,TMetadataView>>

Отложенные ссылки, которые будут вычисляться.

dataContentType
IContentType

Тип целевого содержимого.

getter
Func<TExtensionFactory,TExtensionInstance>

Делегат, который конструирует экземпляр расширения из лучшего соответствующего элемента providerHandles .

contentTypeRegistryService
IContentTypeRegistryService

Экземпляр IContentTypeRegistryService , в котором упорядочиваются типы содержимого.

errorSource
Object

Ссылка на объект, который будет изменен для возможных исключений.

Возвращаемое значение

TExtensionInstance

Результат getter.

Комментарии

Этот класс поддерживает инфраструктуру Visual Studio и в целом не предназначен для непосредственного использования из кода.

Применяется к