IVsDataProviderObjectFactory - интерфейс
Предоставляет возможность создания реализации поставщика DDEX сущностей поддержки.
Пространство имен: Microsoft.VisualStudio.Data.Core
Сборка: Microsoft.VisualStudio.Data.Core (в Microsoft.VisualStudio.Data.Core.dll)
Синтаксис
'Декларация
Public Interface IVsDataProviderObjectFactory
public interface IVsDataProviderObjectFactory
public interface class IVsDataProviderObjectFactory
type IVsDataProviderObjectFactory = interface end
public interface IVsDataProviderObjectFactory
Тип IVsDataProviderObjectFactory предоставляет следующие члены.
Методы
Имя | Описание | |
---|---|---|
![]() |
CreateObject | Создает экземпляр заданной сущности поддержки DDEX, которая реализуется поставщиком DDEX. |
![]() |
GetAssembly | Разрешает строка определенной сборки поставщик- к соответствующему представлению Assembly. |
![]() |
GetType | Разрешает имя типа поставщик- конкретных к соответствующему представлению Type. |
В начало страницы
Заметки
Поставщик DDEX состоит из набора сущностей, поддержки конкретных реализаций DDEX, которые могут использоваться клиентами для вызова расширения функциональности поставщик-, определенного для определенной известной действия.На самом базовом уровне сущности поддержки DDEX представлены интерфейсами, которые затем могут создаваться другие типы сущностей в виде XML-содержимого.Этот интерфейс представляет фабрику для всех сущностей поддержки глобального DDEX и должен быть реализован всеми поставщиками DDEX.Он также предоставляет разрешение пользовательского типа и сборки, который можно использовать при работе с объектами поддержки, определяющих эту информацию в виде строк, которые необходимо включить.
Поставщик DDEX может реализовать этот интерфейс явно или неявно.Неявная реализация происходит, когда поставщик на основе реестра и DDEX является встроенной реализацией интерфейса считывает различные разделы реестра, которые описывают создание сущности.Явная реализация происходит, когда поставщик на основе DDEX пакета и proffered экземпляр этого интерфейса в качестве службы на реализации пакета Visual Studio поставщика.Первое наиболее гибкие; последние наиболее гибкие.Первое предпочтительный подход, если последний требуется.
Примеры
В следующем коде показано, как пакет- DDEX на поставщик может реализовать этот интерфейс с поддержкой нескольких стандартных сущностей поддержки.Он использует базовую реализацию интерфейса, который определен в сборке платформы DDEX.
using System;
using Microsoft.VisualStudio.Data.Core;
using Microsoft.VisualStudio.Data.Framework;
using Microsoft.VisualStudio.Data.Services;
using Microsoft.VisualStudio.Data.Services.SupportEntities;
internal class MyProviderObjectFactory : DataProviderObjectFactory
{
public override object CreateObject(Type objType)
{
if (objType == null)
{
throw new ArgumentNullException("objType");
}
if (objType == typeof(IVsDataConnectionProperties))
{
return new MyConnectionProperties();
}
if (objType == typeof(IVsDataConnectionSupport))
{
return new MyConnectionSupport();
}
return null;
}
}
internal class MyConnectionProperties : DataConnectionProperties
{
}
internal class MyConnectionSupport : IVsDataConnectionSupport
{
// Implement the interface methods
public void Initialize(object providerObj) {}
public bool Open(bool doPromptCheck) {return true;}
public void Close() {}
public string ConnectionString { get {return "";} set {} }
public int ConnectionTimeout { get {return 0;} set {} }
public DataConnectionState State { get {return DataConnectionState.Closed;} }
public object ProviderObject { get {return null;} }
// Inherited from System.IServiceProvider
public Object GetService(Type serviceType) {return null;}
// Inherited from System.IDisposable
public void Dispose() {}
}